使用cout将表达式转换为赋值

时间:2014-08-06 18:13:16

标签: c++

我正在创建一个代码来将任何文件读取为二进制文件并转换为十六进制。我发现以下代码将char打印为十六进制。但是,我想设置一个带有转换结果的变量。我怎么能这样做?

当前代码:

std::cout << std::hex << std::setw(2) << std::setfill('0')
                << (int)x;

1 个答案:

答案 0 :(得分:1)

使用stringstream

std::stringstream ss;
ss << std::hex << std::setw(2) << std::setfill('0') <<(int)x;
std::string s = ss.str();

您需要#include <sstream>