这只是精度和舍入误差的问题吗?

时间:2017-10-19 20:31:49

标签: c++

我知道有很多类似的主题,但通常问题是不同的舍入,比如5而不是4,而正确的值是double值,因为它具有更高的精度。在制作一些东西时我遇到了问题。我写了一个新的,简短的程序来呈现它。为什么会这样?

#include <iostream>

using namespace std;

int main()
{
    double lbs1 = 285.7;
    float lbs2 = 285.7f;

    double pds_left1 = lbs1 - int (lbs1);
    double pds_left2 = lbs2 - int (lbs2);

    cout << "1: " << pds_left1 << endl;
    cout << "2: " << pds_left2 << endl;

    return 0;
}

结果是:

  

1:0.7

     

2:0.700012

0 个答案:

没有答案