首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Windows Mobile >

_tcscpy 和 memcpy 实现无效!解决方法

2012-01-29 
_tcscpy 和 memcpy 实现无效!TCHARnameBuf[128]{0}_tcscpy/*memcpy*/(nameBuf,networkDestInfo.szDescri

_tcscpy 和 memcpy 实现无效!
TCHAR   nameBuf[128]   =   {0};

_tcscpy   /*memcpy*/(   nameBuf,   networkDestInfo.szDescription     /*,   sizeof(networkDestInfo.szDescription)*/   );

//其中   networkDestInfo.szDescription     为   TCHAR   类型数组,长度128

在debug时,networkDestInfo.szDescription中有内容,但   nameBuf   始终为空。
用memcpy也出现同样问题。

如何解决啊?
谢谢!


[解决办法]
这样的问题只能自己慢慢跟了,
[解决办法]
基本功问题。
任何时候,只要你在C中使用字符串,都要首先想到的是字符串必须是以‘\0 '结尾的。而函数StrCpy等都是用于字符串操作的。
你给出的代码的功能准确说不是复制字符串,而是数组对拷。所以,大可使用 For(i = 0; i <SIZE; i++)。
另外,MemCpy的使用应该不会出错的,因为它需要指定最多要复制的字符个数,因此只要目的缓冲区不会溢出即可。如果还是有问题,那只能是多调试下。

热点排行