调用输出格式设置函数所需头文件包含于iomanip头文件中 下面介绍setw()与setprecision()函数的作用 setw()设置输出的域宽 setprecision()设置输出的精度 若要设置小数点位数则在setprecision()之前加fixed 如:cout<<fixed<<setprecision()<<n;
n为变量 先看一段代码,代码用于理解setw()与setprecision()的作用范围
#include <string> #include <iostream> #include <iomanip> using namespace std; int main() { string a = "123", b = "456", c = "789"; double n = 12.123, m = 11.111; cout << setw(12) << a << b << c << endl; cout << setw(12) << a << setw(12) << b << setw(12) << c << endl; cout << setprecision(2) << m << " " << n << endl; return 0; }运行结果
每个cout语句对应上面的一行数据
setw()对其后的第一次输出的数据起作用,需要重复设置;setprecision()对其后的所有数据输出都起作用,不需重复设置setw()使用时对中文不友好,故在程序中尽量不要使用中文
总结: setw()只对紧接着的输出有效,紧接着的输出结束后又变回默认的域宽,与 setw() 字段宽度不同的是,setprecision()的精度设置将保持有效,直到更改为其他值为止