• 标准输出设备


    向文本文件输出

    标准输出设备显示器被系统看作文本文件,所以我们以向标准设备输出为例,介绍文本文件输出格式控制。

    插入运算符

    • 插入(<<)运算符
      • 为所有标准C++数据类型预先设计的,用于传送字节到一个输出流对象。

    操纵符(manipulator)

    • 插入运算符与操纵符一起工作
      • 控制输出格式。
    • 很多操纵符都定义在
      • ios_base类中(如hex())、头文件(如setprecision())。
    • 控制输出宽度
      • 在流中放入setw操纵符或调用width成员函数为每个项指定输出宽度。
    • setw和width仅影响紧随其后的输出项,但其它流格式操纵符保持有效直到发生改变。
    • dec、oct和hex操纵符设置输入和输出的默认进制。

    setiosflags操纵符

    • 这个程序中,通过使用带参数的setiosflags操纵符来设置左对齐,setiosflags定义在头文件iomanip中。
    • 参数iosbase::left是iosbase的静态常量,因此引用时必须包括ios_base::前缀。
    • 这里需要用resetiosflags操纵符关闭左对齐标志。setiosflags不同于width和setw,它的影响是持久的,直到用resetiosflags重新恢复默认值时为止 。
    • setiosflags的参数是该流的格式标志值,可用按位或(|)运算符进行组合

    setiosflags的参数(流的格式标识)

    • ios_base::skipws 在输入中跳过空白 。
    • ios_base::left 左对齐值,用填充字符填充右边。
    • ios_base::right 右对齐值,用填充字符填充左边(默认对齐方式)。
    • ios_base::internal 在规定的宽度内,指定前缀符号之后,数值之前,插入指定的填充字符。
    • ios_base::dec 以十进制形式格式化数值(默认进制)。
    • ios_base::oct 以八进制形式格式化数值 。
    • ios_base::hex 以十六进制形式格式化数值。
    • ios_base::showbase 插入前缀符号以表明整数的数制。
    • ios_base::showpoint 对浮点数值显示小数点和尾部的0 。
    • ios_base::uppercase 对于十六进制数值显示大写字母A到F,对于科学格式显示大写字母E 。
    • ios_base::showpos 对于非负数显示正号(“+”)。
    • ios_base::scientific 以科学格式显示浮点数值。
    • ios_base::fixed 以定点格式显示浮点数值(没有指数部分) 。
    • ios_base::unitbuf 在每次插入之后转储并清除缓冲区内容。

    精度

      • 浮点数输出精度的默认值是6,例如:3466.98。
      • 要改变精度:setprecision操纵符(定义在头文件iomanip中)。
      • 如果不指定fixed或scientific,精度值表示有效数字位数。
      • 如果设置了iosbase::fixed或iosbase::scientific精度值表示小数点之后的位数,若没有只是表示正常输出几位数字
  • 相关阅读:
    使用react+html2canvas+jspdf实现生成pdf文件
    命名函数表达式
    java-信息安全(二十)国密算法 SM1,SM2,SM3,SM4
    003-docker-单宿主机下的网络模式
    【性能扫盲】性能测试面试题
    LoadRunner函数
    爬取干货集中营的美女图片
    ELK 性能优化实践 ---总结篇
    ELK 性能优化实践
    告警图片-搞笑的
  • 原文地址:https://www.cnblogs.com/working-in-heart/p/12232566.html
Copyright © 2020-2023  润新知