关于float的一些疑问?

[复制链接]
查看11 | 回复1 | 2011-5-11 11:59:59 | 显示全部楼层 |阅读模式
floata=33333.33333;
输出是33333.332031
我知道float前7位准确、可是后面的2031呢?、是怎么来的、?
是垃圾?
回复

使用道具 举报

千问 | 2011-5-11 11:59:59 | 显示全部楼层
可以这样理解,计算机里只有1和0,一切数据都是二进制的,而且是有限小数,不能表示无限循环或不循环小数,十进制转换成二进制造成精度损失,33333.33333转换成最接近的二进制数是33333.332031,当输出再转换回来,自然就输出了33333.332031。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行