C语言中float型数据表示的最大数字到底是多少啊?

Python014

C语言中float型数据表示的最大数字到底是多少啊?,第1张

C语言中float型数据表示的最大数字为3.402823E38。

FLOAT数据类型用于存储单精度浮点数。具有4个字节,包括一个符号位、一个8位二进制指数和一个23位尾数。由于尾数的高顺序位始终为1,因此它不是以数字形式存储的。此表示形式为float类型,提供了一个在-3.402823E38到3.402823E38之间的范围。

扩展资料:

FLOAT数据类型变量可以提升为更大基数的类型(从 float 类型到 double 类型)。当对浮点变量执行算术时,通常会出现提升。此算术始终以与具有最高精度的变量一样高的精度执行。

如果存储比精度更重要,优先考虑对浮点变量使用 float 类型。相反,如果精度是最重要的条件,则优先使用 double 类型。

你的问题好奇怪:2能转换成3.4?没听说过!你只能这么理解:2X2^127和3.4X10^38相等或近似,是分别用二进制幂和10进制幂表示的同一个数。用计算器输入2的128次方,结果就是3.40.....x10的38次方。2x10^2=40x5,不该说2怎么转换成40、10^2怎么转换成5的吧?另外建议不钻这种牛角尖,知道float是4字节,表示 的数有个范围就行了,不然你几天才能看一页啊?以后类似的情况多着呢!

根据我的计算vc

是使用26位尾数,6位指数

26位尾数中

有一个符号位

也就是最大的数是+/-(2^25-1)*(+/-2^5-1)

也就是+/-33554431e+/-31

也就是+/-3.4e+/-38