本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《
阿里云开发者社区用户服务协议
》和
《
阿里云开发者社区知识产权保护指引
》。如果您发现本社区中有涉嫌抄袭的内容,填写
侵权投诉表单
进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
if(isalpha(ch))
return isupper(ch) ? ch - 55 : ch - 87;
return -1;
int hex2dec(
char *hex)
int len;
int num = 0;
int temp;
int bits;
int i;
len = strlen(hex);
for (i=0, temp=0; i<len; i++, temp=0)
temp = c2i( *(hex + i) );
bits = (len - i - 1) * 4;
temp = temp << bits;
num = num | temp;
return num;
int main(
int argc,
char *argv[])
char ch[10] = {0};
strcpy(ch,
"1de");
printf(
"hex:%d\n", hex2dec(ch));
return 0;