0

在他们的控制台浏览器中进行测试

1067.11-1000 = 67.1099999999999

但正确的事情 67.11

甚至可以测试计算器窗口..

有人可以向我解释一下吗?

4

2 回答 2

1

浮点数使用 base2 存储,这会产生小的差异,就像您在上面转换为 base10 时演示的那样。如果使用以下数字,差异会更大:1000000067.11 - 1000000000 = 67.1100000143。这是因为精度水平随着计算的数字的增加而降低。

于 2013-11-08T18:47:21.787 回答
0

缺乏精度是浮点类型数字的主要缺点——一些实数只能近似表示。

您可以点击此链接以了解有关浮点格式表示的更多信息

于 2013-11-08T18:48:32.567 回答