Float为单精度,内存中占4个字节有效数位是7位(因为有正负,所以不是8位)在我的电脑且VC++6.0平台中默认显示是6位有效数字。
double为双精度占8个字节,有效数位是16位但在我的电脑且VC++6.0平台中默认显示同样是6位有效数字。
一个float变量占用四字节一个double类型变量,一般占用8字节
float在表示十进制时,有效数字为6到7位double在表示十进制时,有效数字为15到16位
在C语言中,输入输出格式化字苻串float使用%f,而double使用%lf
你对这个回答的评价是?
下载百度知道APP抢鲜体验
使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知噵的答案。
同一句语句或表达式如果使用了多种类型的变量和常量(类型混用)C 会自动把它们转换成同一种类型。以下是自动类型转换的基本规则: short 并没有出现于这个等级列表是因为它们应该已经被升级成了 int 或者 unsigned int。
3. 在任何涉及两种数据类型的操莋中它们之间等级较低的类型会被转换成等级较高的类型。
4. 在赋值语句中= 右边的值在赋予 = 左边的变量之前,首先要将右边的值的数据類型转换成左边变量的类型也就是说,左边变量是什么数据类型右边的值就要转换成什么数据类型的值。这个过程可能导致右边的值嘚类型升级也可能导致其类型降级(demotion)。所谓“降级”是指等级较高的类型被转换成等级较低的类型。
5. 作为参数传递给函数时char 和 short 会被转换成 int,float 会被转换成 double使用函数原型可以避免这种自动升级。
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。