oblind

float, double在内存中的结构

             符号位   指数      尾数    长度
float           1           8         23       32
double       1         11         52       64

所以float有效数字为log10(2^23) = 6.92,6~7位,范围-2^128 ~ 2^128 即 -3.4E+38 ~ 3.4E+38

double有效数字为log10(2^52)=15.63,15~16位,范围-2^1024 ~ 2^1024即 -1.79E+308 ~ 1.79E+308


评论