昨天老师上课《程序设计与计算机系统》中说道:(3.14+le20)-le20=0.00,而le20-le20+3.14=3.14,对前答案的解释是:浮点数在运算时,会有一个对齐问题,这样在非常大的数和3.14相加时,会舍掉有效位,然后只剩le20了,听得不懂而且也没查到资料,所以到这里来求大神来了!先谢了!
是的,浮点数有特殊的存储方式,你可以看一下关于浮点数的存储资料,或许能明白一些,维基中有
简单理解:大数吃小数。 这个和高数的那个等价替换的思想有相同之处吧