【问题标题】:Cannot convert from string to hexadecimal [duplicate]无法从字符串转换为十六进制 [重复]
【发布时间】:2012-09-16 02:31:06
【问题描述】:

可能重复:
C++ convert hex string to signed integer

我有一个十六进制数字的字符串行,比如 12ab43c ..(但我已经将它作为字符串读取),我想将它传递给 unsigned char* linehex 或直接传递给十六进制,以便我以后可以在我的程序中使用它进行进一步计算。 哪种方法最有效?

【问题讨论】:

标签: c++ hex


【解决方案1】:

最简单的可能是将其读取为数字开头,而不是将其读取为字符串,然后进行转换。例如:

some_stream >> std::hex >> your_number;

快速演示代码:

#include <iostream>

int main() {    
    int x;

    std::cin >> std::hex >> x;

    std::cout << x << "\n";
    return 0;
}

输入:ff
输出:255

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-03
    • 2016-12-27
    • 2011-05-15
    • 1970-01-01
    • 2019-01-17
    • 2010-10-18
    • 2013-01-16
    相关资源
    最近更新 更多