大数字浮点数返回错误值

时间:2014-06-11 18:38:22

标签: objective-c

float testFloat = 40999838;

我输入了一个断点,然后它显示为40999840,比它应该的数字高2个。

有谁知道为什么会这样,以及我如何解决它?

1 个答案:

答案 0 :(得分:1)

float无法存储那么多有效数字,因此会为该值分配最接近的可能值。

使用double,您的问题就会消失,因为double可以存储更多有效数字。