C float类型 范围 详解

来源:互联网 发布:酷狗软件 编辑:程序博客网 时间:2024/05/16 13:48
尾数? 
精度? 
1 1111111 1 尾数的23位不全为0: 表示不是数值 
1 1111111 1 00000000000000000000000: 表示负无穷大.比最小负数还小的数都视为负无穷大.
1 1111111 0 11111111111111111111111: 表示最小的负数,即-2^128=-3.4*10^38
1 0000000 1 00000000000000000000000: 表示最大的负数,即-2^(-126)=-1.18*10^(-38)
0 0000000 0 00000000000000000000000: 表示0 
0 0000000 1 00000000000000000000000: 表示最小的正数,即2^(-126)=1.18*10^(-38)
0 1111111 0 11111111111111111111111: 表示最大的正数,即2^(128)=3.4*10^(38)
0 1111111 1 00000000000000000000000: 表示正无穷大,比最大正数还大的数都视为正无穷大.
0 1111111 1 尾数的23位不全为0: 表示不是数值 
棕上所述,float型数据的表示范围有以下五种(还有别的特殊的就不说了): 
负无穷大; -3.4*10^38<x<-1.175*10^(-38); 0; 1.175*10^(-38)<x<3.4*10^38; 正无穷大.
当然,单精度数的输出只能保证6到7个有效数字,其余各位不准确,但在内存中的存放是准确的.
这是一种说法;
范围是-3.4*10^-38~3.4*10^38
0 0
原创粉丝点击