可能重复:
C++将十六进制字符串转换为带符号整数
我已经在谷歌上搜索了,但没有找到任何帮助。 所以这是我的问题: 我有包含十六进制代码的字符串,例如:string s1 =“5f0066” 我想将此字符串转换为十六进制。 我需要将字符串与从二进制文件中读取的十六进制代码进行比较。
(只需要基本的想法如何转换字符串) 5f 最好的问候和感谢。
编辑:以无符号字符格式获得了二进制文件信息。所以它是0x5f... 希望以相同的格式获得字符串
可能重复:
C++将十六进制字符串转换为带符号整数
我已经在谷歌上搜索了,但没有找到任何帮助。 所以这是我的问题: 我有包含十六进制代码的字符串,例如:string s1 =“5f0066” 我想将此字符串转换为十六进制。 我需要将字符串与从二进制文件中读取的十六进制代码进行比较。
(只需要基本的想法如何转换字符串) 5f 最好的问候和感谢。
编辑:以无符号字符格式获得了二进制文件信息。所以它是0x5f... 希望以相同的格式获得字符串
使用 stringstream 和 std::hex
std::stringstream str;
std::string s1 = "5f0066";
str << s1;
int value;
str >> std::hex >> value;
<cstdlib>
中的strtol()
函数?我只是猜测,因为你的问题不是很清楚。 - DevSolarstd::ifstream
中),那么这篇文章可能比上面发布的重复问题更好。 - jogojapan