0

我只是想比较保存在 C 中的双精度变量中的双精度数,然后将其与值 1 进行比较。例如:

double x;
x = 1;
if(x == 1)
  call ....

但即使 x 的值为 1,此条件也会被评估为 false,因为 x 保持值 0.99999 而不是 1。

我该如何解决这个问题!

4

1 回答 1

5

这是一个浮点数,因此您需要考虑精度: if(x<1.000001 && x > 0.99999)

于 2012-06-25T12:06:53.293 回答