区别在于6.5可以完全以float和double表示,而3.2不能完全以两种类型表示。并且两个最接近的近似是不同的。
float和double之间的相等比较首先将float转换为double,然后将两者进行比较。因此数据丢失。
您不应该比较浮点数或双精度数是否相等。因为您不能真正保证分配给float或double的数字是准确的。
该舍入误差是浮点计算的特征 。
将无限多个实数压缩为有限数量的位需要近似表示。尽管有无限多个整数,但是在大多数程序中,整数计算的结果可以存储在32位中。
相反,在给定固定位数的情况下,大多数使用实数的计算将产生无法使用那么多位数精确表示的数量。因此,浮点计算的结果通常必须四舍五入,以重新适合其有限表示形式。舍入误差是浮点计算的特征。
检查每个计算机科学家应该了解的有关浮点运算的更多信息!



