这个问题在这里已经有了答案:
Best Answer-推荐答案 strong>
简单地说,不应该期望 float 完全准确。
float (在我们常用的计算机中使用)本身以 2 为基数,而通常的数字是以 10 为基数。并非一个数字基数中的所有数字都可以在另一个数字基数中完全准确地表示。
作为一个 empale 1/3 不能完全准确地在以 10 为底的数字系统中表示(0.333333...),但可以在以 3 为底的数字系统中。
结果,需要将 float 与指定的误差范围进行比较。取差值的绝对值并与允许范围进行比较。
因此,财务金额通常不(不应)表示为 float 。这会产生诸如 NSDecimalNumber
之类的类。
关于ios - Cocos2d,iOS,Objective-C : float error,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/20227005/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) |
Powered by Discuz! X3.4 |