有人帮忙解答下double和float在使用中什么情况下会出现不同,我给float赋值1234.567还是可以正常输出的。我是文盲,求大神解释
double是常用的,而且范围广。
float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位)
loat f = 345.98756f;//结果显示为345.9876,只显示7个有效位,对最后一位数四舍五入。
double d=345.975423578631442d;//结果显示为345.975423578631,只显示15个有效位,对最后一位四舍五入。
double 和 float 的区别是double精度高,有效数字16位,float精度7位。但double消耗内存是float的两倍,double的运算速度比float慢得多,C语言中数学函数名称double 和 float不同,不要写错,能用单精度时不要用双精度
一般的例子的都没有超位,都可以用
float赋值是这样的,float=1234.567f,float赋值后面必须有f。