StringCbCat和StringCchCat api的区别是什么?
What is the difference between StringCbCat and StringCchCat APIs
StringCbCat: http://msdn.microsoft.com/en-us/library/windows/desktop/ms647495%28v=vs.85%29.aspxStringCchCat: http://msdn.microsoft.com/en-us/library/windows/desktop/ms647518%28v=vs.85%29.aspx
目前我正在写一个c++程序来处理TCHAR字符串。我发现这两个Windows api,一个是StringCbCat,另一个是StringCchCat。它们似乎都能够为TCHAR字符串执行strcat()函数。但如果它们是一样的,为什么要给它们取两个不同的名字呢?我试过谷歌,但没有运气。
有谁知道有什么不同吗?或者它们是一样的?
p。其他StringCbxxx和StringCchxxx函数也一样,如stringclength和StringCchLength
StringCbCat::
cbDest [in] Type: size_t目标缓冲区的大小,in字节。的最大数目STRSAFE_MAX_CCH * sizeof(TCHAR).
例子::
WCHAR wszTemp[10] ;
DWORD dwNumberOfBytes = 10 * sizeof(WCHAR) ;
// 10 * 2 = 20 Bytes.
// 1 [WCHAR][2] takes 2 Bytes
StringCchCat::
cchDest [in] Type: size_t目标缓冲区的大小,in字符。最大字符数STRSAFE_MAX_CCH.
例子::
WCHAR wszTemp[10] ;
DWORD dwNumberOfCharacters = _countof(wszTemp) ;
// 10 Characters.
// 1 [WCHAR][2] takes 2 Bytes that defines 1 character in UNICODE.
相关文章:
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- C++避免重复声明的语法是什么
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 实现无开销push_back的最佳方法是什么
- C++从另一个类访问公共静态向量的正确方法是什么
- "throw expression code" 1e7 >返回 d 是什么?投掷标准::overflow_error( "too big" ) : d;意味 着?
- C++中名称篡改的目的是什么
- 在 c++ 中拥有一组结构的正确方法是什么?
- 这个指针和内存代码打印是什么?我不知道是打印垃圾还是如何打印我需要的值
- 是什么阻止DOMTimerCoordinator::NextID进入无休止的循环
- 派生类销毁的最佳实践是什么
- 这个语法std::class<>{}(arg1, arg2) 在C++中是什么意思?
- 通过JNI传递数据数组的最快方法是什么
- "using namespace std;"在C++的作用是什么?
- C++和Python之间平等含义的区别的根源是什么?
- 尾随空格是什么意思,它和空白有什么区别?
- 调试构建和发布构建、区别和用途是什么意思
- "Thing thing;"和"Thing thing = Thing();"有什么区别,什么时候应该使用一个而不是另一个?
- char和CString的区别和关系是什么?
- 那么,是什么区别了template(c.end(),_1)和template_back(_1)呢