一:修改显示时使用的计数系统
控制整数以什么进制显示
1.十进制 cout<<dec
2.十六进制cout<<hex
3.八进制cout<<oct
二:调整字段宽度(默认右对齐)
int width():返回字段宽度的当前格式;
int width(int i):将宽度设置为i个空格,并返回以前的字段宽度值
注意:width()方法只影响将显示的下一个项目,然后字段宽度将恢复到默认值
三:填充字段
cout.full('*');
设置一直有效直到新的设置
四:设置浮点数的显示精度
c++的默认精度为6位(末尾0不显示)
方法:cout.precision(i);
设置一直有效直到新的设置
五:打印末尾的0和小数点
方法:cout.setf(ios_base::showpoint);
六:再谈setf()
第一个原型:fmtflags setf(fmtflahs);
ios_base::boolalpha ; 输入和输出bool值,可以为true和false
ios_base::showbase; 对于输出,使用c++基数前缀(0,0x)
ios_base::showpoint; 显示末尾小数点
ios_base::uppercase; 对于16进制输出,使用大写字母,E表示法
ios_base::showpos; 在正数前加上+
第二个原型:fmtfalgs setf(fmtflags,fmtflags);
方法:设置由多位控制的格式选项,第一个参数和上一个一样,第二个参数指出要清除第一个参数的哪些位
第二个参数 第二个参数 含义
ios_base::basefield ios_base::dec 使用基数10
ios_base::basefield ios_base::oct 使用基数8
ios_base::basefield ios_base::hex 使用基数16
ios_base::floatfield ios_base::fixed 使用定点计数法
ios_base::floatfield ios_base::scientific 使用科学计数法
ios_base::sdjustfield ios_base::left 使用左对齐
ios_base::sdjustfield ios_base::right 用右对齐
ios_base::sdjustfield ios_base::internal 符号或基数前缀左对齐,值右对齐
如何恢复以前的默认:
ios_base::fmtflags old=cout.setf(ios_base::left,ios_base::adjustfield);
cout.setf(old,ios_base::adjustfield);
清除设置
cout.unsetf(fmtflags mask);
七:标准控制符
cout<<left<<fixed;
八:iomanip头文件
setprecision() 设置精度
setfill() 填充字段
setw() 字段宽度
他们都接受参数
原文链接: https://www.cnblogs.com/maqiang/archive/2012/05/02/2478417.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/49165
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!