咨询电话:
15628812133
24
2023/03

float精度丢失

发布时间:2023-03-24 09:35:48
发布者:神棍子
浏览量:
0

在对两个float类型的数据进行四则运算的时候,可能会导致出现xx.99999999x.00000001等情况。

    例

            php精度丢失实例

在上述例子中可以看到,0.55+0.02并不等于0.57,因为这个结果在内存中其实是0.5799999990.570000000001所以并不等于0.57。这个问题在底层为C的程序中基本都会出现,例如jspython等等

js精度丢失实例

Js例子

python精度丢失实例

Python例子

这种情况会直接影响到程序的准确性,此问题在遇到统计计算、报表程序中尤为重要,解决办法就是用内置的四则云算函数来去计算,

    Php 使用bc函数库bcadd bcsub bcmul bcdiv

    Js建议使用number.js

    Python使用decimal模块来解决


关键词:
返回列表