在C++中,如果你想要使用std::cout来显示十六进制数,你需要使用std::hex流操纵符。std::hex告诉std::cout以十六进制格式输出整数,并且在前面加上"0x"前缀。
#include <iostream>
int main() {
int x = 255;
std::cout << "x in decimal: " << x << std::endl;
std::cout << "x in hex: " << std::hex << x << std::endl;
return 0;
}
程序输出:
x in decimal: 255
x in hex: ff
如果想要换回输出十进制,需要使用std::dec流操纵符将它重置为默认的十进制格式。
以下是常用的流操纵符:
- std::dec:将输出转换为十进制,默认情况下即为十进制。
- std::oct:将输出转换为八进制。
- std::hex:将输出转换为十六进制,小写字母形式。
- std::hex|std::uppercase:将输出转换为十六进制,大写字母形式。
- std::showbase:在输出八进制和十六进制时,显示前缀0和0x。
- std::noshowbase:在输出八进制和十六进制时,不显示前缀0和0x。