下表列出了关于标准浮点类型的存储大小、值范围和精度的细节:
类型 存储大小 值范围 精度
float 4 字节 1.2E-38 到 3.4E+38 6 位有效位
double 8 字节 2.3E-308 到 1.7E+308 15 位有效位
long double 16 字节 3.4E-4932 到 1.1E+4932 19 位有效位
头文件 float.h 定义了宏,在程序中可以使用这些值和其他有关实数二进制表示的细节。下面的实例将输出浮点类型占用的存储空间以及它的范围值:
实例
#include
#include
int main()
{
printf(“float 存储最大字节数 : %lu \n”, sizeof(float));
printf(“float 最小值: %E\n”, FLT_MIN );
printf(“float 最大值: %E\n”, FLT_MAX );
printf(“精度值: %d\n”, FLT_DIG );
return 0;
}
%E 为以指数形式输出单、双精度实数,详细说明查看 C 库函数 – printf().
当您在 Linux 上编译并执行上面的程序时,它会产生下列结果:
float 存储最大字节数 : 4
float 最小值: 1.175494E-38
float 最大值: 3.402823E+38
精度值: 6