考虑以下示例:
#include <iostream>
#include <clocale>
#include <cstdlib>
#include <string>
int main()
{
std::setlocale(LC_ALL, "en_US.utf8");
std::string s = "03A0";
wchar_t wstr = std::strtoul(s.c_str(), nullptr, 16);
std::wcout << wstr;
}
这会在Coliru上输出Π
。
问题
std::strtoul
来自<cstdlib>
。使用它我完全没问题,但是我想知道上面的例子是否只能使用C ++标准库(也许是字符串流)?
另请注意,字符串上没有prefex 0x
表示十六进制。