假设表示16进制的字符串 "3132" 相当于char[4]
他的内部表示 33 31 33 32 (16进制,ASCII码)
如何把"3132" 转成内部表示的31 32 相当于char[2]
3 1 3 2 => 1 2
33 31 33 32 => 31 32
需要自定义函数?
他的内部表示 33 31 33 32 (16进制,ASCII码)
如何把"3132" 转成内部表示的31 32 相当于char[2]
3 1 3 2 => 1 2
33 31 33 32 => 31 32
需要自定义函数?
{
char * tmp = p;
short * tmpOut = out;
for(int i =0; i<=size;i+=2)
{
tmp+=i;
memcpy(&(tmpSh+1),tmp,2);
}
}
sprintf();
sprintf()可以吗?
"0123456789abcdef"将变成"#Eg壂惋" (我用UE看到的)
1楼的代码肯定有问题,不过启发了我.
2楼你可能误解我的意思了.
3楼,不懂你说的.我自定义函数了
unsigned char* CTestDlg::hex2(const char* chmd5,unsigned char* chnet)
{
char* dbch=new char[3];
dbch[2]='\0';
for(int i=0;i<32;i+=2)
{
strncpy(dbch,chmd5+i,2);
chnet[i/2]=strtol(dbch,0,16);
}
delete[] dbch;
return chnet;}