代码之家  ›  专栏  ›  技术社区  ›  Armen Tsirunyan

如何用A-F(而不是A-F)来传输十六进制数?

  •  10
  • Armen Tsirunyan  · 技术社区  · 14 年前

    ostream 输出带字符的十六进制数 A-F 而不是 a-f ?

    int x = 0xABC;
    std::cout << std::hex << x << std::endl;
    

    这个输出 abc 但我更愿意看到 ABC

    1 回复  |  直到 8 年前
        1
  •  12
  •   paxdiablo    8 年前

    是的,你可以用 std::uppercase

    std::cout << std::hex << std::uppercase << x << std::endl;
    

    在以下完整程序中:

    #include <iostream>
    #include <iomanip>
    
    int main (void) {
        int x = 314159;
        std::cout << std::hex << x << " " << std::uppercase << x << std::endl;
        return 0;
    }
    

    哪些输出:

    4cb2f 4CB2F