String to numeric simple code implementation, string digital code
# Include <stdio. h> # define u8 unsigned charstatic const int MAC_LENGTH = 6; static u8 char1Tonum (u8 ch) {if (ch> = '0 ') & (ch <= '9') return ch-'0'; else if (ch> = 'A') & (ch <= 'F ')) return ch-'A' + 10; else if (ch> = 'A') & (ch <= 'F') return ch-'A' + 10; else return 0xff;} // simply convert the string to a number (for example, convert the MAC address to six numbers) static u8 char2Tonum (u8 hch, u8 lch) {return (char1Tonum (hch) <4) | char1Tonum (lch);} static void charToArray (u8 * array, u8 * stringBuf) {for (int I = 0, j = 0; I <MAC_LENGTH; I ++, j + = 2) {array [I] = char2Tonum (stringBuf [j], stringBuf [j + 1]); printf ("0x % x \ n", array [I]) ;}} int main () {u8 buf [MAC_LENGTH] = {0 }; u8 bufMac [MAC_LENGTH * 2 + 1] = "112233445566"; charToArray (buf, bufMac);/* for (int I = 0, j = 0; I <MAC_LENGTH; I ++, j ++ = 2) {buf [I] = char2Tonum (bufMac [j], bufMac [j + 1]); printf ("0x % x \ n ", buf [I]);} */return 0;}/* Ask hovertree.com */
Recommended: http://www.cnblogs.com/roucheng/p/3470287.html