C ++如何在cout中获得十进制后的固定数字<<

时间:2015-05-24 05:27:10

标签: c++ precision

C ++如何在输出中得到十进制后的固定数字???? 像f = 123.456789 我想在输出中显示123.46。

4 个答案:

答案 0 :(得分:2)

您可以在C ++中使用 setprecision()方法。

cout<<std::fixed<<std::setprecision(2)<<f; 

答案 1 :(得分:0)

另一种方法是使用 printf 功能,确保包含 stdio.h 文件以使用它,
的printf(&#34;%0.2F&#34;中,f);
这里%f是格式说明符(浮点数),0.2是&#39;%&#39;和&#39; f&#39;用于将精度设置为小数点后两位。

答案 2 :(得分:0)

你也可以使用boost::format

#include <boost/format.hpp>

cout << boost::format("%.2f") % f << endl;

答案 3 :(得分:0)

您需要I / O操纵器才能获得小数精度。

#include <iomanip>
#include <iostream>

int main( )
{
    double foo = 123.456789L;

    std::cout << std::setprecision(2) << std::fixed << foo << std::endl;

    return 0;
}