怎样将16进制字符串转换成字符数组啊

比如说 char str[]="4F608BF45462"; 现在转成 arr[]={0x60,0x4F,0xF4,0x0B,0x62,0x54};
我要得到16进制的字符 例如 0x60 代表一个字符
最新回答
浮生远离

2024-11-06 01:50:48

先取str[0], 判断'4'的ascii值可以知道'4'是阿拉伯数字,那么4的ascii减去0的ascii值,就是数字4了, 再取str[1], 判断'F'的ascii值为字母,那么F减去A再加上0xA就是数字0xF了, 同理,每个字符对应的值就能求出来, 再按照对应顺序调整一下即可

不用谢我,我是雷锋
追问
str[0]-'0'后得到整数4  str[1]-'A'得到整数5 加上0xA后是16进制的F  但是怎么把两个合并得到一个字符0x4F啊  我不是要得到str的10进制的值,是想把它每2位转成一个字符。
追答
0x4有了,0xf有了,把0x4移到十位上,再加上0xf不就行了
0x4*0xf+0xf