1.从名字上看:iomanip是 io-manipulator的简称,意思是输入输出操控器
2.从对象上看:io针对的是流对象的输入输出,包括常见的:
? ? ? ? ? ? ? ? ? ? ? ? - 标准输入输出流<iostream>:cin,cout
? ? ? ? ? ? ? ? ? ? ? ? - 文件输入输出流:ofstream,ifstream,fstream
? ? ? ? ? ? ? ? ? ? ? ? - 字符串输入输出流<sstream>:istringstream,ostringstream,iostringstream
3.从功能上看:iomanip是对流对象进行格式化操作,包括但不限于控制左右对齐,控制输入输出精度,控制输出宽度,指数表示等,和C语言print格式化输出有异曲同工之处。
简单一句话来说:常用于输出特定格式的内容或数据。
比如,为了使得控制台输出结果更便于查看对比,或者要按照特定格式输出文本文件等等
下面是我们常用的格式化输出功能:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 常用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 | ?设置整数为八进制 |
接下来对常用的函数给出详细使用方法和使用示例