C++ Primer 5th笔记(chap 17 标准库特殊设施)指定浮点数记数法
Posted thefist11
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ Primer 5th笔记(chap 17 标准库特殊设施)指定浮点数记数法相关的知识,希望对你有一定的参考价值。
1. 可以强制一个流使用科学记数法、 定点十进制或是十六进制记数法。
-
操纵符 scientific 改变流的状态来使用科学记数法。
-
操纵符 fixed 改变流的状态来使用定点十进制
-
hexfloat 也可以强制浮点数使用十六进制格式。
-
defaultfloat 操纵符将流恢复到默认状态—根据要打印的值选择记数法
1.1 按列打印
在执行 scientific, fixed 或hexfloat 后, 精度值控制的是小数点后面的数字位数, 而默认情况下精度值指定的是数字的总位数—既包括小数点之后的数字也包括小数点之前的数字。 使用 fixed 或
scientific 令我们可以按列打印数值, 因为小数点距小数部分的距离是固定的
cout << "default format: " << 100 * sqrt(2.0) << '\\n'
<< "scientific: " << scientific << 100 * sqrt(2.0) << '\\n'
<< "fixed decimal: " << fixed << 100 * sqrt(2.0) << '\\n'
<< "hexidecimal: " << uppercase << hexfloat << 100 * sqrt(2.0) << '\\n'
<< "use defaults: " << defaultfloat << 100 * sqrt(2.0)
<< endl;
输出
default format: 141.421
scientific: 1.414214e+002
fixed decimal: 141.421356
hexadecimal: Oxl.lad7bcp+7
use defaults: 141.421
1.2 打印小数点
默认情况下, 当一个浮点值的小数部分为 0 时, 不显示小数点。
- showpoint 操纵符:强制打印小数点
- noshowpoint 操纵符:恢复默认行为
cout « 10.0 « endl;// 打印 10
cout « showpoint << 10.0 / / 打印 10.0000
« noshowpoint « endl; / / 恢复小数点的默认格式
以上是关于C++ Primer 5th笔记(chap 17 标准库特殊设施)指定浮点数记数法的主要内容,如果未能解决你的问题,请参考以下文章
C++ Primer 5th笔记(chap 17 标准库特殊设施)输出补白
C++ Primer 5th笔记(chap 17 标准库特殊设施)bitset类型
C++ Primer 5th笔记(chap 17 标准库特殊设施)正则表达式
C++ Primer 5th笔记(chap 17 标准库特殊设施)tuple 返回多个值