std :: hex使得放入流中的数据打印为十六进制值。但是,用于表示数字10到15的字母A-F总是以小写字母表示。有没有办法改变它来改为使用大写字母?
答案 0 :(得分:4)
有没有办法将其更改为使用大写字母?
是的,您可以应用std::uppercase
I / O操纵器来更改默认行为(小写)。
上述参考文献的例子:
#include <iostream> int main() { std::cout << std::hex << std::showbase << "0x2a with uppercase: " << std::uppercase << 0x2a << '\n' << "0x2a with nouppercase: " << std::nouppercase << 0x2a << '\n' << "1e-10 with uppercase: " << std::uppercase << 1e-10 << '\n' << "1e-10 with nouppercase: " << std::nouppercase << 1e-10 << '\n'; }
输出:
0x2a with uppercase: 0X2A 0x2a with nouppercase: 0x2a 1e-10 with uppercase: 1E-10 1e-10 with nouppercase: 1e-10