问题描述:在阅读一段代码时,发现代码的最后一部分出现
... cout.setf(ios::fixed); cout.setf(ios::showpoint); ...
解决:
cout.setf()是通过设置格式标志来控制cout输出格式
cout.setf(ios::fixed)表示用正常的记数方式来输出(与科学计数法相对应)
coutsetf(ios::showpoint)表示显示小数点和额外的零,即使不需要
还有一些其他的参数,总结如下:
标志 | 功能 |
---|---|
oct | 使用八进制来显示数值 |
boolalpha | 可以使用true/false来进行输入输出的布尔值 |
dec | 使用十进制来显示数值 |
hex | 使用十六进制来显示数值 |
left | 输出调整为左对齐 |
right | 输出调整为右对齐 |
scientific | 用科学记数法来显示浮点数 |
fixed | 用正常的记数方式来显示(与科学记数法对应) |
showbase | 输出时显示所有数值的基数 |
showpoint | 显示小数点和额外的零,即使不需要 |
showpos | 在非负数之前显示“+” |
skipws | 当从一个流读取时,跳过空白字符(tab/spaces/newlines) |
unitbuf | 每次插入后,清空缓冲区 |
internal | 将填充字符回到符号和数值之间 |
upperclass | 以大写的形式显示科学记数法中的"e"和十六进制格式的"x" |