用C语言写一个16进制数据转换成10进制数据的函数
时间: 2023-03-07 08:36:54 浏览: 160
十六进制文本 与 十六进制数据 相互转换 童叟无欺 闭着眼镜移植
可以使用以下C语言函数来实现16进制数据转换成10进制数据:long int htoi (const char s[]) { int i; long int n = 0; if (s[0] == '0' && (s[1]=='x' || s[1]=='X')) { i = 2; } else { i = 0; } for (; (s[i] >= '0' && s[i] <= '9') || (s[i] >= 'a' && s[i] <= 'f') || (s[i] >='A' && s[i] <= 'F');++i) { if (tolower(s[i]) > '9') { n = 16 * n + (10 + tolower(s[i]) - 'a'); } else { n = 16 * n + (tolower(s[i]) - '0'); } } return n; }
阅读全文