float:4字节,3.4*10(-38)--3.4*10(38)double:8字节,1.7*10(-308)--1.7*10(308)长double类型范围和double是8字节,范围相同。对于单精度浮点数,有一个符号位、八个指数位和23个尾数位。指数可以在-128~127范围内表示。尾数是23。当尾数都是1,加上小数点前的1时,索引取最大正数127(8位,最大正数127,最小负数128),浮点数取最大正数。1.111111111*2^127(1.最后的23个1,因为尾数从1到2,最高的顺序总是1,所以只需要访问小数部分,所以小数点是23位1),大约等于2*2^127=3.4*10^38。它是3.4*10^38,负数也是。double的计算与此类似。double的符号位是63位,索引是62-52位,共11位。范围为-1024~1023。尾数在51到0之间。范围为1.111111*2^1023(1。最后52个)是1.7*10^308。负数是一样的。
我想向您推荐另一篇文章以了解更多详细信息。
仔细阅读,你就会知道。耐心是很长的一段时间。---浮点数分为单精度(float)和双精度(double)。根据ieee754标准,float类型占用计算机内存4字节,double类型占用8字节。单精度和双精度在存储中分为三个部分:符号:0表示正指数,1表示负指数:用于存储科学计数法中的索引数据;尾数:尾数:浮点:符号1索引8尾数23双符号1索引11尾数52
在c语言中,单精度浮点类型为浮点,双精度浮点类型是double。具体区别如下:1。浮点变量占用4个字节,双变量占用8个字节。
2.意思是不同的范围。浮动范围为-3.4e-38~3.4e-38。倍频范围为-1.7e-308~1.7e308。三。准确度是不同的。十进制浮点数,有效数字为6到7。当double表示十进制时,有效位是15到16位。4输入和输出格式不同。在c语言中,输入和输出格式字符串,float使用%f,double使用%lf。
单精度占用4字节,其值为近似值,双精度占用8字节,其值为正值,实值(单双精度)单精度(单精度)和双精度(双精度)类型值为浮点值,用小数表示实数。单精度可以精确到7位,而双精度可以精确到15位。用户在选择这些数据类型时,要注意变量的取值范围。当值为整数时,为了加快运算速度,不需要将变量定义为浮点。对于大浮点数,可以使用d、e格式的输入和输出。