c++ cout格式化

一:修改显示时使用的计数系统

控制整数以什么进制显示

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

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月9日 上午12:50
下一篇 2023年2月9日 上午12:50

相关推荐