StringCchCopy
函数功能:StringCchCopy 函数的功能是复制一个字符串到缓冲区。StringCchCopy 函数要求提供目标缓冲区的长度,以确保写入数据不会超出缓冲区的末尾。
微软推荐使用该函数替代以下函数:
[*]strcpy, wcscpy, _tcscpy
[*]lstrcpy
[*]StrCpy
API 函数原型:
HRESULT StringCchCopy(
_Out_LPTSTR pszDest,
_In_ size_t cchDest,
_In_ LPCTSTR pszSrc
);
参数解析:
参数 含义
pszDest 缓冲区,用于接收拷贝过来的字符串
cchDest 1. 目标缓冲区的大小(字符个数)
2. 该值必须大于或等于 pszSrc + 1(待拷贝字符串的字符+'\0')
3. 这个数不能超过 STRSAFE_MAX_CCH
pszSrc 待拷贝的字符串
返回值:
这个函数返回一个 HRESULT,而不是指向缓冲区的指针。我们强烈建议您使用 SUCCEEDED 和 FAILED 宏来测试这个函数的返回值。
返回值可以是以下任意一个值:
返回代码 描述
S_OK 字符串正常拷贝
STRSAFE_E_INVALID_PARAMETER 1. cchDest 参数的值为 0
2. cchDest 参数的值大于 STRSAFE_MAX_CCH
STRSAFE_E_INSUFFICIENT_BUFFER 1. 因缓冲区空间不足导致失败
2. 结果被截断,当仍然包含'\0'结尾
3. 如果截断操作可以被接受,则不一定被看作是失败
【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。
WinSDK 没人占楼 {:5_91:} 路过学习 {:10_281:}专业啊 搞个例子会更清晰点,更加利于理解
页:
[1]