要在C++中使用ostream
将unsigned char
作为十六进制打印,您可以使用std::hex
操作符和std::setw
操作符。以下是一个示例代码:
#include<iostream>
#include <iomanip>
#include <sstream>
int main() {
unsigned char value = 0xAB;
// 使用 std::hex 和 std::setw 打印十六进制值
std::ostringstream oss;
oss<< std::hex<< std::setw(2)<< std::setfill('0')<< static_cast<int>(value);
std::string result = oss.str();
std::cout << "Hex value: "<< result<< std::endl;
return 0;
}
在这个示例中,我们将unsigned char
值0xAB
转换为十六进制字符串"AB"
。std::hex
操作符告诉ostream
将整数值以十六进制形式打印,而std::setw(2)
和std::setfill('0')
确保输出的十六进制值始终占用两个字符,如果需要,会在前面填充零。
领取专属 10元无门槛券
手把手带您无忧上云