float最大会保存多少的数值?(必须是精确的数值)

float最大能保存多少的数值?(必须是精确的数值)
我随便测了一下,float最大只能保存3000万的数值,再高,就不准确了,

比如:
float a = 32341234; // 在内存中,数值与此相等
但是如果是这样:
float a = 42341234; // 在内存中却是42341232

看来,要想保存准确的带小数的数值还是要用double

各位怎么看
------解决思路----------------------
引用:
从编码形式角度,2的N次方(N不大于128)应该是准确的


4byte的int类型能表示2的100次方?
8byte 的整类型能表示都大?
------解决思路----------------------
float最大会保存多少的数值?(必须是精确的数值)理解讨论之前请先学会如何观察

http://bbs.****.net/topics/390676437
------解决思路----------------------
一个数转为二进制数,其位数不超过24位,那么用float将会是准确值,如果不超过53位,double将是准确值,再大就要等科技进步了