1. 程式人生 > >ASCII字元和16進位制互轉

ASCII字元和16進位制互轉

C語言中,字元和其ASCII碼是等價的,比如’A’這個字元和單位元組整數65是等價的. 
比如char c=’A’;int a=c;的話,a就是65

//函 數 名:CharToHex() 
//功能描述:把ASCII字元轉換為16進位制 
//函式說明: 
//呼叫函式: 
//全域性變數: 
//輸 入:ASCII字元 
//返 回:16進位制 
///////////////////////////////////////////////////////////////////// 
unsigned char CharToHex(unsigned char bHex){ 
if((bHex>=0)&&(bHex<=9)) 
bHex += 0x30; 
else if((bHex>=10)&&(bHex<=15))//大寫字母 
bHex += 0x37; 
else bHex = 0xff; 
return bHex; 

///////////////////////////////////////////////////////////////////// 
//函 數 名:HexToChar() 
//功能描述:把16進位制轉換為ASCII字元 
//函式說明: 
//呼叫函式: 
//全域性變數: 
//輸 入:16進位制 
//返 回:ASCII字元 
///////////////////////////////////////////////////////////////////// 
unsigned char HexToChar(unsigned char bChar){ 
if((bChar>=0x30)&&(bChar<=0x39)) 
bChar -= 0x30; 
else if((bChar>=0x41)&&(bChar<=0x46))//大寫字母 
bChar -= 0x37; 
else if((bChar>=0x61)&&(bChar<=0x66))//小寫字母 
bChar -= 0x57; 
else bChar = 0xff; 
return bChar;