使用stringstream很容易将字符串进行十六进制编码,但是是否可能使用stringstream解码结果字符串?
#include <iostream>
#include <string>
#include <iomanip>
#include <sstream>
int main()
{
std::string test = "hello, world";
std::stringstream ss;
ss << std::hex << std::setfill('0');
for (unsigned ch : test)
ss << std::setw(2) << int(ch);
std::cout << ss.str() << std::endl;
}
我不打算直接位移字节或使用旧的 C 函数,例如 scanf 函数族。
std::stoi
中使用前缀。 - Some programmer dude