您的位置:首页 > 其它

CString 16进制字符串转为 BYTE[] 数组

2014-05-12 20:20 387 查看
16进制字符串CString 如何转为 BYTE[]
CString str ="01020304";
BYTE cmd[4];

赋值后

cmd[] = {0X01,0X02,0X03,0X04};

static int HexToNum(CString str)
{

int dem=0;
for(int i=0;i<str.GetLength();i++)
{
result=dem*16;
if((str[i]<='9')&&(str[i]>='0'))        //0~9之间的字符
result+=str[i]-'0';
else if((str[i]<='F')&&(str[i]>='A'))   //A~F之间的字符
result+=str[i]-'A'+10;
else if((str[i]<='f')&&(str[i]>='a'))   //a~f之间的字符
result+=str[i]-'a'+10;
else
return -1;                          //出错时返回-1
}
return dem;
}

cmd [0] = HexToNum(str[0]);
cmd[1] = HexToNum(str[1]);
cmd [2] = HexToNum(str[2]);
cmd[13 = HexToNum(str[3]);


参考网址
http://blog.sina.com.cn/s/blog_7060ba990101053f.html 

http://blog.sina.com.cn/s/blog_6f2d29af01010as3.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: