cout.precision(n); 这个方法的功能是,设置精度为n,返还值是上一次的设置精度。
#include <iostream> using namespace std; int main () { float a; cin>>a; cout<<"上一次的精度设置值:"<<cout.precision(3)<<endl; cout<<"设置精度后:"<<a; return 0; }
输入:1.2456 上一次的精度设置值:6 设置精度后:1.25
cout.width(n); cout.width(); 将显示当前的字段宽度,默认为0。cout.width(n); 就是把字段的宽度设置为n。cout.width(); 默认是右对齐的方式,就是说如果当前数据宽度不够n那么剩余的位置就要在左端用空格补全。并且它这能影响下一次的输出格式,再输出的时候输出格式又恢复成默认格式。
#include <iostream> using namespace std; int main () { int a; cin>>a; cout.width(10); cout<<a<<endl; cout<<cout.width(); return 0; }
12 12 0
cout.fill(ch); 它的功能是用ch来替代原有的填充字符。 这个和cout.width(); 有一个明显的不同就是在它设置之后就会一直保持这个值不会恢复最初的状态,同样的都会返回上一次设置后的填充字符。
#include <iostream> using namespace std; int main () { int a; char ch='*'; cin>>a; cout.fill(ch); cout.width(5); cout<<a<<endl; cout<<cout.fill(); }
输入:12 输出:***12 输出:*