设置值的输出宽度
本文所属图书 > C/C++程序设计
数据输出宽带可以用C++语言提供的函数setw()指定输出数据项的宽度。setw()括号中通常给出一个正整数值,用于限定紧跟其后的一个数据项的输出宽带。如,setw(10)为紧跟其后的数据项的输出占10个字符宽度。
【例3-5】设置值的输出宽度。#include <iostream>
#include<iomanip>
using namespace std;
int main ()
{
int m=1234;
cout<<"设置域宽: "<<endl;
cout<<setw(3)<<m<<endl;
cout<<setw(5)<<m<<endl;
cout<<setw(10)<<m<<endl;
return 0;
}
程序运行结果如图3-5所示。
说明:
1)如果数据的实际宽度小于指定宽度,按右对齐的方式在左边留空;如果数据的实际宽度大于指定宽度,则按实际宽度输出,即指定宽度失效。
2)setw()只能限定紧随其后的一个数据项,输出后即回到默认输出方式。
C++语言程序可以用setfill(c)设置填充字符,c为填充的字符。setfill(c)需要与setw(n)合用,setfill()与setw()不同,它一旦指定,就会一直有效,直到指定下一个setfill()为止。
【例3-6】设置填充字符。#include <iostream>
#include<iomanip>
using namespace std;
int main ()
{
int m=1234;
cout<<"设置填充字符: "<<endl;
cout<<setfill('*')<<setw(5)<<m<<endl;
cout<<setw(10)<<m<<endl;
return 0;
}