实型变量实型数据数值范围

来源:百度知道 编辑:UC知道 时间:2024/05/27 00:00:39
实型数据数值范围是10的n次方不是2的次方为什么呢???double可表示的最大最小负数,最小正数,是多少呢???
谢谢

实型变量 浮点数,按国际标准 IEEE754 规定方法 表达,存放。
计算机内用2 进制存放。编译器 用 10进制 宏常量表示 数值范围和精度。
常用 float 型 内存 占 4 字节 32位,double 型 内存 占 8 字节 64位。
罕用: 延伸单精确度(43位元以上,很少使用)与
延伸双精确度(79位元以上,通常以80位元实做)。
具体的编译器,有自己的规定,数值范围定义在 float.h 里。
MS VC++ 6.0规定:
DBL_MAX 1.7976931348623158e+308 -- double 最大
DBL_MIN 2.2250738585072014e-308 --double 最小
DBL_EPSILON 2.2204460492503131e-016 --double 精度
FLT_MAX 3.402823466e+38F -- float 最大
FLT_MIN 1.175494351e-38F -- float 最小
FLT_EPSILON 1.192092896e-07F -- float 精度
LDBL_MAX 1.189731495357231765e+4932L -- 扩展最大
LDBL_MIN 3.3621031431120935063e-4932L -- 扩展最小
写程序时,你可以用 第一列的宏常量名表示数值,这样可适用各种平台。
整型数数值范围 定义在 limits.h 里。你可以自己查你编译器里的最大最小值。
其它范围,例如指数范围,精度范围,也定义在 float.h 里,这里就不啰嗦列出。

其实用2的N次方和用10的N次方表示,本质上没有什么不同,比如2的8次方与2.56乘10的2次方有什么不同呢。只是用10的N次方表示,编程者更容易直观地估计出它的大小范围。因为人更善于用十进制思考。

Double(双精度浮点型)变量存储为 IEEE 64 位(8 个字节)浮点数值的形式,它的范围在负数的时候是从 -1.79769313486231E308 到 -4.94065645841247E