MAC字符转换有关问题
MAC字符转换问题
如题:
char tmp[13]={"abcdef123456"};
char mac[6]={0};
如何转化成
mac[6]={0xab,0xcd,0xef,0x12,0x34,0x56};
------解决思路----------------------
如题:
char tmp[13]={"abcdef123456"};
char mac[6]={0};
如何转化成
mac[6]={0xab,0xcd,0xef,0x12,0x34,0x56};
------解决思路----------------------
int char_to_hex(char c)
{
if (c >= '0' && c <= '9') {
return c - '0';
} else if (c >= 'a' && c <= 'f') {
return c - 'a' + 10;
} else if (c >= 'A' && c <= 'F') {
return c - 'A' + 10;
} else {
printf("invalid input!");
return -1;
}
}
for (i = 0; i < 6; i++) {
mac[i] = (char)(char_to_hex(tmp[2*i]) * 16 + char_to_hex(tmp[2*i+1]));
}