小编Han*_*nda的帖子

C++ float vs double cout setprecision oddities(newbie)

任何人都可以解释为什么当我使用setprecision()时,这两个相同值的变量可以输出不同的值?

#include <iostream>
#include <iomanip>
int main()
{
    float a=98.765;
    double b = 98.765;
    //std::cout<<std::setprecision(2)<<a<<std::endl;
    std::cout<<std::fixed;
    std::cout<<std::setprecision(2)<<a<<std::endl;
    std::cout<<std::setprecision(2)<<b<<std::endl;
}
Run Code Online (Sandbox Code Playgroud)

a的输出为98.76,而b的输出为98.77.

c++ math precision floating-accuracy

8
推荐指数
1
解决办法
321
查看次数

标签 统计

c++ ×1

floating-accuracy ×1

math ×1

precision ×1