C++:字符串流解析

标签 c++ stringstream istringstream

我正在寻找一种简单而优雅的方法来使用 stringstream(或 istringstream 或其他一些 Std-C++ 类)解析数字(十进制和十六进制)。

十进制数的有效输入,例如11应该是 11 0xb

通常我会使用正则表达式,但这里不可能,因为缺少库和其他 C++ 编译器。

谢谢!

最佳答案

这可能很愚蠢,但恕我直言,最简单的解决方案是 std::stringstream + std::hex(和 others)

unsigned int x;   
std::stringstream ss;
ss << std::hex << "0xb";
ss >> x;

关于C++:字符串流解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42835355/

相关文章:

c++ - 具有文件处理和 istringstreams 的无限循环

c++ - 为什么 istringstream 在流的末尾附加 '-1' 字符?

c++ - 什么叫表达式 `T (&some(...)) [2]` where T=char

c++ - 通过引用传递 "advanced"概念?

c++ - 如何使 QGraphicsSimpleTextItem 中的文本居中?

c++ - std::cout << stringstream.str()->c_str() 什么都不打印

c++ - 如何从 stringstream 转换为 unsigned char vector ,反之亦然?

c++ - 如何在 C++ 中编写文本编辑器

c++ - 如何测试stringstream运算符>>是否已解析错误类型并跳过它

C++ - 重复使用 istringstream