C/C++: Converting hexadecimal value in char to integer(C/C++:将 char 中的十六进制值转换为整数)
问题描述
我将十六进制值存储为字符:
I have hexadecimal values stored as characters:
char A = '0';
char B = '6';
char C = 'E';
...我需要将它们转换为整数.我知道'atoi',但这仅适用于十进制编码的字符值.有没有类似的功能?
... I need them coverted to integers. I know 'atoi', but this only works for decimal coded char values. Any similar function?
推荐答案
你可以试试strtol
.但是 strtol
需要一个以 0 结尾的 char *
,所以:
You could try strtol
. But strtol
needs a 0 terminated char *
, so:
long x = strtol((char[]){A, 0}, NULL, 16);
这篇关于C/C++:将 char 中的十六进制值转换为整数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:C/C++:将 char 中的十六进制值转换为整数


- 从python回调到c++的选项 2022-11-16
- 使用/clr 时出现 LNK2022 错误 2022-01-01
- C++ 协变模板 2021-01-01
- 如何对自定义类的向量使用std::find()? 2022-11-07
- 近似搜索的工作原理 2021-01-01
- 一起使用 MPI 和 OpenCV 时出现分段错误 2022-01-01
- 与 int by int 相比,为什么执行 float by float 矩阵乘法更快? 2021-01-01
- Stroustrup 的 Simple_window.h 2022-01-01
- 静态初始化顺序失败 2022-01-01
- STL 中有 dereference_iterator 吗? 2022-01-01