4个内建的单字节处理的流对象cin、cout、cerr和clog,4个双字节处理的流对象wcin、wcut、wcerr、wclog(wchar_t);
cerr为标准错误输出流对象,默认输出设备是屏幕,clog为带缓存的标准日志输出流对象,默认输出设备也是屏幕。
格式控制
1,用函数设置或者复位格式
fmtflgs setf(fmtflags flag)
参数flag说明要设置的格式,由ios_base类中给出,为若干枚举常量。例如ios::left,还有一种函数如下所示:
fmtflags setf(fmtflags flag,fmtflags mask);
其中第二个参数mask是隐码格式,例如设置为adjustfield(对齐)、basefield(进制)和floatfield(浮点)格式。
cout.setf(ios::scientific|ios::uppercase);
cout<<2006.5<<endl;//输出2.006500E+03 科学计数法输出E大写
cout.setf(ios::floatfield,ios::fixed);
cout<<2006.5<<endl;//输出2006.5 小数点形式输出
cout.setf(ios::showpos);
cout<<2006.5<<endl;//显示加号 +2006.5
2,ios_base提供的width和precision函数
cout.width(29);
cout<<"hello"<<endl;//右对齐输出,占据29个字符
cout.precision(4)
cout<<2006.654<<endl;//输出2007
3,用重载“《”或“》”操作符设置流格式
首先包含头文件#include<iomanip>
cout<<setw(20)<<"hello"<<endl;
cout<<setprecision(4)<<2006.526<<endl;