【C++】基于iomanip标准库的流对象格式化输出详解

一.iomanip标准库是什么?(What is it)

1.从名字上看:iomanip是 io-manipulator的简称,意思是输入输出操控器

2.从对象上看:io针对的是流对象的输入输出,包括常见的:

                        - 标准输入输出流<iostream>:cin,cout

                        - 文件输入输出流:ofstream,ifstream,fstream

                        - 字符串输入输出流<sstream>:istringstream,ostringstream,iostringstream

3.从功能上看:iomanip是对流对象进行格式化操作,包括但不限于控制左右对齐,控制输入输出精度,控制输出宽度,指数表示等,和C语言print格式化输出有异曲同工之处。

二.iomanip什么情况下使用?(When and Where)

简单一句话来说:常用于输出特定格式的内容或数据。

比如,为了使得控制台输出结果更便于查看对比,或者要按照特定格式输出文本文件等等

三.iomanip中这些功能如何使用?(How to use)

下面是我们常用的格式化输出功能:

                                                          常用iomanip标准库功能函数      
 setbase(n)  设置整数为n进制(n=8,10,16)
 setfill(n)

 设置字符填充,c可以是字符常或字符变量

 setprecision(n)  设置浮点数的有效数字为n位
 setw(n)  设置字段宽度为n位
 setiosflags(ios::fixed)  设置浮点数以固定的小数位数显示
 setiosflags(ios::scientific)    设置浮点数以科学计数法表示
 setiosflags(ios::left)  输出左对齐
 setiosflags(ios::right)  输出右对齐
 setiosflags(ios::skipws)  忽略前导空格
 setiosflags(ios::uppercase)  在以科学计数法输出E与十六进制输出X以大写输出,否则小写。
 setiosflags(ios::showpos)  输出正数时显示"+"号
 setiosflags(ios::showpoint)  强制显示小数点
 resetiosflags() 

 终止已经设置的输出格式状态,在括号中应指定内容

 dec   设置整数为十进制
 hex  设置整数为十六进制
 oct  设置整数为八进制

接下来对常用的函数给出详细使用方法和使用示例

1.

猜你喜欢

转载自blog.csdn.net/qq_35902025/article/details/130038381