首页 新闻 会员 周边

请问C中的floag和double分别精确到几位?

0
悬赏园豆:5 [已解决问题] 解决于 2013-07-09 16:50

如题:请问C中的floag和double分别精确到几位?

C
hexllo的主页 hexllo | 菜鸟二级 | 园豆:318
提问于:2013-07-08 19:42
< >
分享
最佳答案
2

C中float类型中小数位数为7位,即可精确到小数点后7位,例如0.123456789,在float类型中只能取到0.1234567,后面的两位有效数字损失掉了;double类型中小数位数为15位,可精确到小数点后15位。

PS:C语言中每个单精度浮点型数据在内存中占用4个字节的存储空间,它的有效数字一般有7~8位;双精度浮点型数据所占的存储空间为8个字节,有效数字一般有15~16位,这些指标与具体的计算机系统和C语言编译系统有关。

就单浮点型数据的数值精度而言,举个例子说明,例如实数1234567.89,有效数字超过了8位,如果将它赋值给单精度浮点型变量,该变量的值就是1234567.80,其中最后一位是一个随机数,损失了有效数字,降低了精度。

收获园豆:4
红红de | 初学一级 |园豆:172 | 2013-07-08 20:49
其他回答(3)
0

是不是各个平台都有自身的精度的?

收获园豆:1
chenping2008 | 园豆:9836 (大侠五级) | 2013-07-08 22:20
0

路过……

Meen | 园豆:321 (菜鸟二级) | 2013-07-09 08:53
0

路过

panjk | 园豆:712 (小虾三级) | 2013-07-09 09:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册