double类型数据后面的多少位是精确的??

如题所述

1、那一位都不一定是精确的,看使用它时怎么处理。
2、duble底层是二进制浮点数,众所周知,10进制小数有些是无法精准转换成二进制小擞的,比如10进制0.3,无法转换成二进制浮点数0.3,只能转换成0.29999999....,这里那一位是精确的?没有一位是精确的,当然我们会有办法把它处理成0.3。
3、double(双精度浮点数)使用 64 位(8字节) 来储存一个浮点数。 它可以表示十进制的15或16位有效数字,负值取值范围为 -1.7976E+308 到 -4.94065645841246544E-324,正值取值范围为 4.94065645841246544E-324 到 1.797693E+308
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-13
是6位是精确的 默认格式输出浮点数时, 最多只保留小数点后六位。
第2个回答  2013-07-13
Double(双精度浮点型)变量存储为 IEEE 64 位(8 个字节)浮点数值的形式,它的范围在负数的时候是从 -1.79769313486232E308 到 -4.94065645841247E-324,而正数的时候是从 4.94065645841247E-324 到 1.79769313486232E308。Double 的类型声明字符是数字符号 (#)。但是说准确的话一般只有15位。
第3个回答  2013-07-13
那个说6位的是float的。。double是双精度浮点型,应该是14位。。嘿嘿。。
第4个回答  2013-07-13
15位6位的那位兄台是说单精度
相似回答