zoukankan      html  css  js  c++  java
  • 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以八进制格式显示)

  • 相关阅读:
    AD用户移除所属组
    Mysql中文乱码问题完美解决方案
    将sqllite3数据库迁移到mysql
    检查远端服务器端口是否打开
    远程桌面卡
    不同平台的线程并发接口对比
    stm32之中断配置
    stm32之CMSIS标准、库目录、GPIO
    stm32 中断几个库函数实现过程分析
    Tree命令使用
  • 原文地址:https://www.cnblogs.com/carlber/p/9845579.html
Copyright © 2011-2022 走看看