• 使用控制符控制输出格式 #include <iomanip>


    iomanip这个头文件中,io代表输入输出,manip是manipulator(操纵器)的缩写(在c++上只能通过输入缩写才有效。)

    下面是一些常用的控制字符:

    一、输出八进制,十六进制和十进制数

    #include <iostream>
    #include <iomanip>
    using namespace std;
    void  main( )
    {
          int  number=1001;
          cout << “Decimal:” <<dec<<number<<endl
          <<“Hexadecimal:”<<hex<<number<<endl
          <<“Octal:”<<oct<<number<<endl
          <<“Hexadecimal:”<<hex
          <<setiosflags(ios::uppercase)
          <<number<<endl;
    }
    

    输出结果:

    Decimal:1001
    Hexadecimal:3e9
    Octal:1751
    Hexadecimal:3E9
    

    二、设置输出宽度

    cout << setw(8) << 10 <<endl;
    输出结果是:_ _ _ _ _ _10

    若数值10和20均按照宽度8输出,则
    cout << setw(8) << 10 << setw(8) << 20 << endl;
    输出结果是:_ _ _ _ _ _ 10_ _ _ _ _ _20

    如果一个值的位数大于setw(n)确定的宽度位数,则按原宽度输出 。

         float    amount = 4.53671;
         count  << setw(4) <<amount <<endl;
    

    输出结果是:4.53671

    三、用字符填充输出宽度

    #include <iostream>
    #include <iomanip>
    Using namespace std;
    void  main( )
    {
          cout<<setfill(‘*’)
          <<setw(2)<<25<<endl
          <<setw(3)<<25<<endl
          <<setw(4)<<25<<endl;
          cout<<setfill(‘ ’);               //恢复缺省设置
    }
    

    输出结果:

    25    
    *25  
    **25
    

    四、控制左右对齐输出

    缺省时,I/O流以右对齐格式显示

    #include <iostream>
    #include <iomanip>
    Using namespace std;
    void  main( )
    {
    	cout<<setiosflags(ios::right)<<setw(5)<<1<<setw(5)<<2
    	<<setw(5)<<3<<endl;
    	cout<<setiosflags(ios::left)<<setw(5)<<1<<setw(5)<<2
    	<<setw(5)<<3<<endl;
    }
    

    输出结果为:
    _ _ _ _ 1_ _ _ _ 2_ _ _ _ 3
    1_ _ _ 2 _ _ _ 3 _ _ _ _

  • 相关阅读:
    应用系统数据删除与恢复
    Java设计模式(八)Proxy代理模式
    Java设计模式(七)Decorate装饰器模式
    Java服务器端生成报告文档:使用SQL Server Report Service(SSRS)
    C#生成二维码,裁切边框
    Java ORM Hibernate 入门笔记
    Java JDBC MySQL
    Java JDBC SqlServer
    Java设计模式(六)Adapter适配器模式
    Java设计模式(五)Prototype原型模式
  • 原文地址:https://www.cnblogs.com/NIT-yale/p/13842291.html
Copyright © 2020-2023  润新知