C语言单精度与双精度的区别?

admin 2月前 142

404419883 
推荐于2017-09-15

其实就是有效位数不一样。
浮点型变量分为单精度(float)、双精度(double)和长双精度(long double)3类。在Turbo C 中:
比特(位)数 有效数字
float 32 6-7
double 64 15-16
long double 128 18-19
ANSI C 并未具体规定每种类型数据的长度、精度、数值范围,有的系统将double所增加的32位全用于存放小数部分,这样可以增加数值的有效范围,减少舍入误差。有的系统则将所增加的位(bit)一部分存放指数部分,这样可以扩大数值范围


xuminghui382 
2009-03-12

单精度实型 float 占4个字节
能保证6位有效数字,取值范围为-3.4*10的-38次方至3.4*10的38次方。

双精度实型 double 占8个字节
能保证15位有效数字,取值范围为-1.7*10的-308次方至1.7*10的308次方



-----------忽略---广告---赞助-----------
最新回复 (0)
返回
发新帖
忽略--广告--赞助
忽略--广告--赞助
忽略--广告--赞助