memcpy,_tcscpy_s的使用

我想完成的任务:
对于一个字符串 LPCTSTR sourceCode
根据某些符合条件的字串subStr拷贝到一个新的字符串中。
使用安全的拷贝函数:_tcscpy_s实际是一个宏,根据是多字节编码或者是Unicode编码而调用不同的函数。
在tchar.h中我们可以找到:
#ifdef  _UNICODE
.......
#define _tcscpy_s       wcscpy_s
.......
#else
....
#define _tcscpy_s   strcpy_s
...
#endif
原型:
_Check_return_wat_ _CRTIMP_ALTERNATIVE errno_t __cdecl wcscpy_s(_Out_z_cap_(_DstSize) wchar_t * _Dst, _In_ rsize_t _DstSize, _In_z_ const wchar_t * _Src);
使用:
wcscpy_s(dest,count,src);
src不得多于count-1个字符;
该函数最多将count-1个字符从src拷贝到dest中,然后在会在dest的字符串后面自动的加上'\0'
其中count是字符数,而不是字节数。

解析memcpy
使用 void* memcpy(void* dest , const void* src, size_t count);
特别注意这里的count指的是字节数。
当source中的字符数<count时memcpy会在将count后面全部清零。
但是允许拷贝count*sizeof(TCHAR)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值