鱼C论坛

 找回密码
 立即注册
查看: 11067|回复: 8

[API档案] StringCchCat

[复制链接]
发表于 2014-7-19 21:26:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
函数功能:

StringCchCat 函数的功能是将一个字符串拼接到另一个字符串。StringCchCat 函数要求提供目标缓冲区的长度,以确保写入数据不会超出缓冲区的末尾。

微软推荐使用该函数替代以下函数:

  • strcat, wcscat, _tcsat
  • lstrcat
  • StrCat
  • StrCatBuff


API 函数原型:
HRESULT StringCchCat(
  _Inout_  LPTSTR pszDest,
  _In_     size_t cchDest,
  _In_     LPCTSTR pszSrc
);

参数解析:

参数 含义
pszDest1. 目标缓冲区,同时包含第一个字符串
2. 该缓冲区必须大于或等于 pszDest + pszSrc + 1(两个字符串的字符总和+'\0')
cchDest 1. 目标缓冲区的大小(字符个数)
2. 该值必须大于或等于 pszDest + pszSrc + 1(两个字符串的字符总和+'\0')
3. 这个数不能超过 STRSAFE_MAX_CCH
pszSrc 第二个字符串


返回值:

这个函数返回一个 HRESULT,而不是拼接好的字符串指针。我们强烈建议您使用 SUCCEEDEDFAILED 宏来测试这个函数的返回值。

返回值可以是以下任意一个值:

返回代码 描述
S_OK 字符串正常拼接
STRSAFE_E_INVALID_PARAMETER 1. cchDest 参数的值为 0
2. cchDest 参数的值大于 STRSAFE_MAX_CCH
3. 目标缓冲区空间已满
STRSAFE_E_INSUFFICIENT_BUFFER 1. 因缓冲区空间不足导致失败
2. 结果被截断,当仍然包含'\0'结尾
3. 如果截断操作可以被接受,则不一定被看作是失败


备注:

1. 使用 StringCchCat 函数需要添加头文件:strsafe.h


【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-19 22:06:12 | 显示全部楼层
我有种冲动就是把你的这些整合一下做成中文版MSDN精简版
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2014-7-24 22:01:24 | 显示全部楼层
希望多用就能记住!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-9-16 18:24:29 | 显示全部楼层
没有strsafe.h用不了, 有些难办
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-10-20 21:16:20 | 显示全部楼层
强烈支持2楼!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-10-25 22:16:19 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-11-21 15:41:48 | 显示全部楼层
看帖回帖是中华民族的传统美德。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-23 15:13:43 | 显示全部楼层
本帖最后由 wuyw 于 2018-1-23 15:37 编辑

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-3-9 18:01:34 | 显示全部楼层
我发现如果把他放入 WM_PAINT 里面 他重绘时会在执行一遍
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 10:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表