緣由
天氣採集中希望直觀的使用中文,而不是城市代碼,見參考。
過程
static char from_hex(char ch)
{
return isdigit(ch) ? ch - '0' : tolower(ch) - 'A' + 10;
}
static char to_hex(char code)
{
static char hex[] = "0123456789ABCDEF";
return hex[code & 15];
}
unsigned char ToHex(unsigned char x)
{
return x > 9 ? x + 55 : x + 48;
}
unsigned char FromHex(unsigned char x)
{
unsigned char y;
if (x >= 'A' && x <= 'Z') { y = x - 'A' + 10; }
else if (x >= 'a' && x <= 'z') { y = x - 'a' + 10; }
else if (x >= '0' && x <= '9') { y = x - '0'; }
else { assert(0); }
return y;
}
參考https://www.cnblogs.com/zhao1949/p/5545064.html