慕九州4305142
2017-10-09 20:18
求大神解答,单精度型与双精度型的区别
单精度用float定义,双精度用double定义。
ANSI标准仅规定了double至少要和float一样长,同时规定所有的浮点类型至少能够容纳从-10^37到10^37之间的任意值。
所以,不同的编译器可能会有不同的情况。一般来说,float是是4个字节的,double是8个字节的。
float用4个字节32位二进制表示,单精度数大约有7位十进制有效数字,数值的表示范围约为±(3.4×10^38…3.4×10^38);
double用8个字节64位二进制表示,双精度数大约有16位十进制有效数字,数值的表示范围约为±(1.7×10^308…1.7×10^308);
单精度占用4字节内存空间,表示范围是10的负37次方到10的38次方;
双精度占用8字节内存空间,表示范围是10的负307次方到10的308次方;
C语言入门
926897 学习 · 21532 问题
相似问题