• C++ 十进制 八进制 十六进制的转换和关系


    在默认情况下,cout以十进制格式显示整数,而不管这些整数在程序中是如何书写的。如下面的程序所示:

    #include<iostream>
    using namespace std;
    #include<climits>
    int main()
    {   
        int chest = 42;     //十进制
        int waist = 0x42;    //十六进制
        int inseam = 042;    //八进制
    
        cout << "默认情况下,cout 以十进制格式显示整数" << endl;
        cout << "chest = " << chest << " (42以十进制格式显示)" << endl;
        cout << "waist = " << waist << " (0x42以十进制格式显示)" << endl;
        cout << "inseam = " << inseam << " (042以十进制格式显示)" << endl;
        cin.get();
        return 0;
    }  

    程序运行结果:

      默认情况下,cout 以十进制格式显示整数
      chest = 42 (42以十进制格式显示)
      waist = 66 (0x42以十进制格式显示)
      inseam = 34 (042以十进制格式显示)

    2. 如果要以十六进制或者八进制的格式显示数字,则可使用cout的一些特殊性质。在iostream中,它不仅提供了控制符endl,而且还提供了控制符dec,hex和oct,分别用于指示十进制,十六进制和八进制显示整数。如下程序所示:

    #include<iostream>
    using namespace std;
    #include<climits>
    int main()
    {   
        int chest = 42;    
        int waist = 42;    
        int inseam = 42;    
    
        cout << "chest = " << chest << " (42以十进制格式显示)" << endl;
        cout << hex;
        cout << "waist = " << waist << " (0x42以十六进制格式显示)" << endl;
        cout << oct;
        cout << "inseam = " << inseam << " (042以八进制格式显示)" << endl;
        cin.get();
        return 0;
    }  

    运行结果:

      chest = 42 (42以十进制格式显示)
      waist = 2a (0x42以十六进制格式显示)
      inseam = 52 (042以八进制格式显示)

  • 相关阅读:
    (寒假练习 AcWing 870)约数个数(数论)
    (补题 CF 1271B) Blocks
    (补题 POJ-2228)Naptime(环状DP)
    实验 ·SQL语言综合练习
    (补题 水题 汇总)四川大学第二届SCUACM新生赛
    (补题 CF 455A)Boredom(DP)
    (补题 HDU 1176)免费馅饼(DP)
    deppin下使用vscode编写C++
    (补题 CF 355B) Vasya and Public Transport
    【数据结构】ACwing-41. 包含min函数的栈【单调栈】
  • 原文地址:https://www.cnblogs.com/carlber/p/9845579.html
Copyright © 2020-2023  润新知