使用std::hex可将整数以十六进制形式输出,默认小写字母,如int num=255; std::cout

在C++中,使用 cout 输出不同进制的数主要依赖于流操作符(manipulators)。默认情况下,cout 以十进制输出整数,但可以通过设置格式控制符来输出十六进制、八进制甚至二进制(需手动实现)。
1. 输出十六进制数
使用 std::hex 可将整数以十六进制形式输出。字母默认为小写。
#includeint main() { int num = 255; std::cout << std::hex << num << std::endl; // 输出: ff return 0; }
若希望字母大写,可加上 std::uppercase:
std::cout << std::hex << std::uppercase << num << std::endl; // 输出: FF
2. 输出八进制数
使用 std::oct 输出八进制:
立即学习“C++免费学习笔记(深入)”;
std::cout << std::oct << num << std::endl; // 输出: 377
3. 恢复十进制输出
进制设置是持久的,后续所有整数都会按该进制输出。要恢复十进制,使用 std::dec:
std::cout << std::dec << num << std::endl; // 输出: 255
4. 输出二进制数
C++标准库不提供直接输出二进制的操作符,但可以使用 std::bitset 实现:
#include#include int main() { int num = 5; std::cout << std::bitset<8>(num) << std::endl; // 输出: 00000101 return 0; }
std::bitset
也可以封装成函数方便调用:
void printBinary(int n) {
std::cout << std::bitset<8>(n);
}
基本上就这些。掌握 hex、oct、dec 和 bitset 就能灵活输出各种进制数。注意进制状态会影响之后的输出,必要时记得重置为 dec。











