【发布时间】:2014-07-29 05:01:16
【问题描述】:
StringCbCat:http://msdn.microsoft.com/en-us/library/windows/desktop/ms647495%28v=vs.85%29.aspx StringCchCat:http://msdn.microsoft.com/en-us/library/windows/desktop/ms647518%28v=vs.85%29.aspx
目前我正在编写一个 C++ 程序来处理 TCHAR 字符串。我找到了这两个Windows API,一个是StringCbCat,另一个是StringCchCat。他们似乎都能够为 TCHAR 字符串执行 strcat() 函数。但是如果它们是相同的,为什么要给它们两个不同的名字呢?我尝试了谷歌,但没有运气。
有人知道有什么区别吗?还是它们都一样?
PS。其他 StringCbxxx 和 StringCchxxx 函数也是如此,例如 StringCbLength 和 StringCchLength
【问题讨论】:
-
顺便说一句,现在“StrSafe”API 已被弃用,取而代之的是“安全 CRT”,因此您可以使用 strcat_s()。或者更确切地说,您应该使用 wcscat_s(),因为如今 ASCII 和 TCHAR 也被弃用,取而代之的是 UNICODE。对于未实现“安全 CRT”功能的非 Microsoft 平台,StrSafe 仍然很有用。
标签: c++ winapi visual-c++