不要用2的23次方来描述,这种描述我觉得无法理解,谢谢
如上图,float 和 double 的情况类似,都是用上面的方法来表示数据,第一位 sign 是表示正负的,中间几位表示指数,最后几位是个小数。表示的数就会是想下面这样:
由于小数部分的位数是有限的,所以精度也就有限, 如果一个数超过了这个有限的精度,就会被四舍五入,也就损失了精度。你可以根据上面的图,算出来 double 的精度是 15 - 16 位,也可以找一下 float 的位分布,也就可以计算出 float 的精度。
2 回答5.1k 阅读✓ 已解决
1 回答800 阅读✓ 已解决
1 回答813 阅读✓ 已解决
2 回答676 阅读
1 回答574 阅读
748 阅读
http://blog.csdn.net/changlishuang/article/details/49913751
我自己通过这两个的整理做出的解释.