c++ - C/C++ : Converting hexadecimal value in char to integer

标签 c++ c char

我将十六进制值存储为字符:

char A = '0';
char B = '6';
char C = 'E';

...我需要将它们转换为整数。我知道'atoi',但这只适用于十进制编码的字符值。有类似的功能吗?

最佳答案

int v = (A > '9')? (A &~ 0x20) - 'A' + 10: (A - '0');

对于 ASCII 是正确的。对于其他字符集,类似的方法也行得通,但您需要使用 toupper 而不是 &~ 0x20

关于c++ - C/C++ : Converting hexadecimal value in char to integer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11986822/

相关文章:

c - 如果语句不识别真实条件?

c++ - 需要澄清这是否使用了 typedef

c - 将 char 数组中的信息放入动态创建的数组中

c++ - 如何将数组的内容写入硬盘

c++ - 为什么要在函数调用时填充堆栈?

c++ - 编译样例opencv kalman滤波程序时出现链接错误

Python:如何从字符数据流中生成整数?

c++ - openCV 2.4.7 添加符号时出错 : DSO missing from command line

c - 如何将拆分的字符串分配给新变量?

内存中的 C++ 对象