【发布时间】:2013-08-23 08:39:23
【问题描述】:
字符串看起来像“#123456”,结果应该是:
int r = 0x12;
int g = 0x34;
int b = 0x56;
或者简单地在 c++ 中这个任务的逆操作:
How to convert RGB int values to string color
我知道我可以将当前字符串拆分为 3 个子字符串,但是如何将它们实现为十六进制值?
【问题讨论】:
-
见std::stoi和朋友们。
-
@juanchopanza:这些函数没有一种方便的方法来处理非十进制数,是吗?
-
@juanchopanza: 看起来我的库不完整或被删减了,我没有这个功能
-
@KerrekSB 对我来说足够方便。
int i = std::stoi("0x20", 0, 16);或int i = std::stoi("20", 0, 16);. -
@user2083364 它需要 C++11 库支持。根据您的编译器,您可能必须打开它,或者您可能根本没有它。