写代码时每次用到格式化输出就各种搜来搜去,今天好好整理一下,方便以后查阅和使用。
参考链接:
C++ 之 cout 使用攻略
C++ 格式化输出
首先,加上头文件 #include <iomanip>
, 以下的各算子都基于此。
常用的算子及其作用:
算子 |
作用 |
fixed |
以小数形式输出浮点型数据 |
scientific |
以科学计数法形式输出浮点型数据 |
left |
左对齐,右边补空格 |
right |
右对齐,左边补空格 |
setw(6) |
设置输出宽度为8个字符 |
setfill(c) |
在指定输出宽度情况下,以字符c来补充,默认是空格 |
setprecision(n) |
在非fixed情况下,n为有效数字位数;在fixed情况下,n为小数点后保留的位数 |
setiosflags() |
配合ios::使用,效果和以上算子等同 |
注意:
- setw(n)是一次性的,只影响下一次输出结果。若setw(n)后接浮点数,则小数点也算一个宽度。若setw(n)后接的数值宽度大于n,则会全部输出。
- 如果两个相互矛盾的标志同时被设置,如先设置 setiosflags(ios::fixed),然后又设置 setiosflags(ios::scientific),那么结果可能就是两个标志都不起作用。因此,在设置了某标志,又要设置其他与之矛盾的标志时,就应该用 resetiosflags 清除原先的标志。