宏
以下值是特定于实现的,并使用#define指令定义,但这些值不得低于此处给出的值。请注意,在所有情况下,FLT均指代float类型,DBL指代double类型,而LDBL指代long double类型。
宏 |
描述 |
FLT_ROUNDS |
定义浮点加法的舍入模式,并且可以具有以下任何值:
- -1-不确定
- 0- 接近零
- 1- 最接近
- 2 −正无穷大
- 3 −负无穷大
|
FLT_RADIX 2 |
这定义了指数的基数基数表示。base-2是二进制,base-10是常规的十进制表示形式,base-16是十六进制。 |
FLT_MANT_DIG,DBL_MANT_DIG,LDBL_MANT_DIG |
这些宏定义数字中的位数(以FLT_RADIX为基础)。 |
FLT_DIG 6,DBL_DIG 10,LDBL_DIG 10 |
这些宏定义了四舍五入后可以无变化表示的最大十进制数字(以10为基数)。 |
FLT_MIN_EXP,DBL_MIN_EXP,LDBL_MIN_EXP |
这些宏定义基本FLT_RADIX中指数的最小负整数值。 |
FLT_MIN_10_EXP -37,DBL_MIN_10_EXP -37,LDBL_MIN_10_EXP -37 |
这些宏定义以10为底的指数的最小负整数值。 |
FLT_MAX_EXP,DBL_MAX_EXP,LDBL_MAX_EXP |
这些宏定义基本FLT_RADIX中指数的最大整数值。 |
FLT_MAX_10_EXP +37,DBL_MAX_10_EXP +37,LDBL_MAX_10_EXP +37 |
这些宏定义了以10为底的指数的最大整数值。 |
FLT_MAX 1E + 37,DBL_MAX 1E + 37,LDBL_MAX 1E + 37 |
这些宏定义最大有限浮点值。 |
FLT_EPSILON 1E-5,DBL_EPSILON 1E-9,LDBL_EPSILON 1E-9 |
这些宏定义了可表示的最低有效数字。 |
FLT_MIN 1E-37,DBL_MIN 1E-37,LDBL_MIN 1E-37 |
这些宏定义最小浮点值。 |
以下示例显示了float.h文件中定义的几个常量的用法。
#include <stdio.h>
#include <float.h>
int main () {
printf("The maximum value of float = %.10e\n", FLT_MAX);
printf("The minimum value of float = %.10e\n", FLT_MIN);
printf("The number of digits in the number = %.10e\n", FLT_MANT_DIG);
}
尝试一下