- 声望
- 0 点
- 西工币
- 538 枚
- 贡献值
- 0 点
- 好评度
- 0 点
- 最后登录
- 2008-7-7
- 注册时间
- 2008-5-29
- 帖子
- 53
- 精华
- 0
- 积分
- 53
- 阅读权限
- 30
- UID
- 15738
 
该用户从未签到 - 西工币
- 538 枚
- 好评度
- 0 点
- 声望
- 0 点
- 注册时间
- 2008-5-29
- 帖子
- 53
- 积分
- 53
- UID
- 15738
|
代码实现的功能:要实现将十六进制字符串,转换成相应的字符串,例如:将字符串"0031003200330034"转换成字符串"1234",也就是说,第一个字符串表示的是UNICODE形式的十六进制的编码串;注释:1的UNICODE形式的十六进制的编码为0031
WCHAR wszTempText[100],wszText[100];
::memset(wszText,0x00,sizeof(wszText));
::wcscpy(wszText,buf);
memset(wszTempText, 0x00, sizeof(wszTempText));
(void)wcscpy(wszTempText, wszText);
memset(wszText, 0x00, sizeof(wszText));
int nCount=wcslen(wszTempText)/4;
WCHAR chTemp[4];
for(int i=0;i<nCount;i++)
{
::memset(chTemp,0x00,sizeof(chTemp));
for(int j=0;j<4;j++)
{
chTemp[j]=wszTempText[i*4+j];
}
wchar_t lTemp = (wchar_t)::_tcstol(chTemp, 0, 16);
wszText=lTemp;
}
wszText[nCount]='\0';
代码是有问题的,问题在哪请大家找出来?
喜欢JAVA,C#,C++的朋友可以根据要求写出自己的东东来。
[ 本帖最后由 wyt323 于 2008-6-3 16:19 编辑 ] |
|