固定十进制精度

时间:2013-05-08 14:29:14

标签: c++

我目前正在使用

std::cout.precision(5);

设置输出的小数精度。但是,我宁愿拥有我的 输出总是输出5位小数(现在它不会显示0)。 我如何更改代码以反映这一点?

4 个答案:

答案 0 :(得分:10)

您正在寻找std::fixedstd::setprecision

#include <iomanip>
#include <iostream>
double f =1.1;
std::cout << std::fixed;
std::cout << std::setprecision(5) << f << std::endl;

标准输出

1.10000

答案 1 :(得分:3)

尝试:

std::cout.precision(5);
std::cout << std::fixed;
std::cout << a << std::endl; //output a with fixed precision 5

见这里:std::fixed为例。

答案 2 :(得分:0)

编写一个println函数,它接受一个浮点并使用它而不是cout,内部调用cout精度

答案 3 :(得分:0)

方便的是:

std::cout.setf(std::ios_base::fixed, std::ios_base::floatfield);
std::cout.precision(x);