C++中setiosflags的一些用法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++中setiosflags的⼀些⽤法
setiosflags的参数是该流的格式标志值,这个值由如下位掩码(ios枚举器)指定,并可⽤位或OR(|)运算符进⾏组合:
ios::skipws 在输⼈中跳过空⽩。
ios::left 左对齐值,⽤填充字符填充右边。
ios::right 右对齐值;⽤填充字符填充左边(缺省对齐⽅式)。
ios::internal 在指定任何引导标记或基之后增加填充字符。
ios::dec 以基10(⼗进制)格式化数值(缺省进制)。
ios::oct 以基8(⼋进制)格式化数值。
ios::hex 以基16(⼗六进制)格式化数值。
ios::showbase 以C++编译器能读的格式显⽰数值常量。
ios::showpoint 对浮点数值显⽰⼩数点和尾部的0。
ios::uppercase 对于⼗六进制数值显⽰⼤写字母A到F,对于科学格式显⽰⼤写字母E。
ios::showpos 对于正数显⽰正号(+)。
ios::scientific 以科学格式显⽰浮点数值。
ios::fixed 以定点格式显⽰浮点数值。
ios::unitbuf 导致在每次插⼊之后ostream::osfx刷新该流。
缺省地,cerr是缓冲的单元。
ios::stdio 导致在每次插⼊之后ostream::osfx刷新该流的stdout和stderr。
setiosflags( ios::fixed ),头⽂件为:include<iomanip>.
在遇到要计算浮点数且希望能控制其输出、精度、⼩数点后的位数等时,⽤setiosflags( ios::fixed )来控制。
1. setprecision( )
使⽤setprecision(n)可控制输出流显⽰浮点数的数字个数。
C++默认的流输出数值有效位是6。
setprecision(n)就是输出n个数,会有四舍五⼊。
2. setiosflags(ios::fixed)
setprecision(n)与setiosflags(ios::fixed)合⽤,可以控制⼩数点右边的数字个数。
例如:
cout << "第" << setiosflags(ios::right)<< setw(3) << i + 1 <<
"个⼈的红包是:" << setiosflags(ios::right) << setw(6) <<
setiosflags(ios::fixed) << setprecision(2) <<
round(b[i] * 100) / 100.0 ;。