Arm*_*yan 10 c++ hex iostream iomanip
是否可以ostream使用字符输出十六进制数字A-F而不是a-f?
int x = 0xABC;
std::cout << std::hex << x << std::endl;
Run Code Online (Sandbox Code Playgroud)
这是输出,abc而我更愿意看到ABC.
pax*_*blo 12
是的,您可以使用std::uppercase,这会影响浮点和十六进制整数输出:
std::cout << std::hex << std::uppercase << x << std::endl;
Run Code Online (Sandbox Code Playgroud)
如下面的完整程序:
#include <iostream>
#include <iomanip>
int main (void) {
int x = 314159;
std::cout << std::hex << x << " " << std::uppercase << x << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
哪个输出:
4cb2f 4CB2F
Run Code Online (Sandbox Code Playgroud)