C语言 double与float数据类型占用的字节数与其数值范围问题
double占用8个字节,而教科书中说它的数值范围是: -10^308~10^308 可按它的字节数换算的话应该是不能大于: -2^(8*8-1)~2^(8*8-1)-1 才对啊。
float也是只占用4个字节,教科书的数值范围是: -10^38~10^38 按字节换算: -2^(4*8-1)~2^(4*8-1)-1
这两个值都没有教科书中的大。为什么啊。
你整型、字符型都能与其字节数换算相等,就这两个不行。
是不是因为它会四舍五入的取前几位有效数字啊,如果是的话是几位呢?
望知者解惑。