ASCII转16进制C语言

2024-12-16 08:39:10
推荐回答(2个)
回答1:

以前引别人的,自己懒得再写了呵呵。原理就是这样的,你可以直接用的

//函 数 名:AscToHex()
//功能描述:把ASCII转换为16进制
unsigned char AscToHex(unsigned char aHex){

if((aHex>=0)&&(aHex<=9))

aHex += 0x30;

else if((aHex>=10)&&(aHex<=15))//A-F

aHex += 0x37;

else aHex = 0xff;

return Hex;
}

//函 数 名:HexToAsc()
//功能描述:把16进制转换为ASCII
unsigned char HexToAsc(unsigned char aChar){

if((aChar>=0x30)&&(aChar<=0x39))

aChar -= 0x30;

else if((aChar>=0x41)&&(aChar<=0x46))//大写字母

aChar -= 0x37;

else if((aChar>=0x61)&&(aChar<=0x66))//小写字母

aChar -= 0x57;

else aChar = 0xff;

return aChar;
}

---补:还是我认为的那样,我还是觉得用C语言的字符串操作函数先分割,再循环求出每个的ASCII,再连接

回答2:

什么怎么转的啊,map