命名空间
变体
操作

std::ios_base::precision

来自 cppreference.cn
< cpp‎ | io‎ | ios_base
 
 
 
 
streamsize precision() const;
(1)
streamsize precision( streamsize new_precision );
(2)

管理由 std::num_put::do_put 所执行的浮点数输出的精度(即生成多少个数字)。

1) 返回当前精度。
2) 将精度设置为给定的值。返回先前的精度。

std::basic_ios::init 确定的默认精度为 6。

目录

[编辑] 参数

new_precision - 新的精度设置

[编辑] 返回值

调用函数前的精度

[编辑] 示例

#include <iostream>
 
int main()
{
    const double d = 12.345678901234;
    std::cout << "The  default precision is " << std::cout.precision() << "\n\n";
    std::cout << "With default precision d is " << d << '\n';
    std::cout.precision(8);
    std::cout << "With high    precision d is " << d << '\n';
}

输出

The  default precision is 6
 
With default precision d is 12.3457
With high    precision d is 12.345679

[编辑] 缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

缺陷报告 应用于 发布时的行为 正确的行为
LWG 189 C++98 'precision' 被定义为 '小数点后的数字个数',
但在某些情况下这并不正确
已更正

[编辑] 参阅

管理字段宽度
(公开成员函数) [编辑]
更改浮点精度
(函数) [编辑]