cfloat(float.h)头文件中定义了一些宏,这些宏描述了浮点型数据精度相关的定义,具体如下:
FLT_RADIX | 用于表述三种浮点数类型的基数(Radix) |
DECIMAL_DIG | C++11一个可以与 long double 类型互相转化而不会损失精度的十进制数中的数字个数的最大值 |
FLT_MIN | float类型的最小值 |
DBL_MIN | double类型的最小值 |
LDBL_MIN | long double 类型的最小值 |
FLT_MAX | float 类型的最大值 |
DBL_MAX | double类型的最大值 |
LDBL_MAX | long double 类型的最大值 |
FLT_EPSILON | 返回 float 类型的机器精度(Machine epsilon),即 1.0 与下一个可被 float 类型描述的值的差(Difference) |
DBL_EPSILON | 返回 double 类型的机器精度,即 1.0 与下一个可被 double 类型描述的值的差 |
LDBL_EPSILON | 返回 long double 类型的机器精度,即 1.0 与下一个可被 long double 类型描述的值的差 |
FLT_DIG | 返回在不损失精度的前提下,float 类型可描述的基于基数 10 的数的最大数字(Digit)个数 |
DBL_DIG | 返回在不损失精度的前提下,double 类型可描述的基于基数 10 的数的最大数字个数 |
LDBL_DIG | 返回在不损失精度的前提下,long double 类型可描述的基于基数 10 的数的最大数字个数 |
FLT_MANT_DIG | 返回在不损失精度的前提下,float 类型可描述的基于基数 FLT_RADIX 的数的最大数字个数 |
DBL_MANT_DIG | 返回在不损失精度的前提下,double 类型可描述的基于基数 FLT_RADIX 的数的最大数字个数 |
LDBL_MANT_DIG | 返回在不损失精度的前提下,long double 类型可描述的基于基数 FLT_RADIX 的数的最大数字个数 |
FLT_MIN_EXP | 用 FLT_RADIX 的 x-1 次幂表示 float 类型的规格化(Normalized)时,x 所能取的最小负整数值 |
DBL_MIN_EXP | 用 FLT_RADIX 的 x-1 次幂表示 double 类型的规格化时,x 所能取的最小负整数值 |
LDBL_MIN_EXP | 用 FLT_RADIX 的 x-1 次幂表示 long double 类型的规格化时,x 所能取的最小负整数值 |
FLT_MIN_10_EXP | 用 10 的 x 次幂表示 float 类型的规格化时,x 所能取的最小负整数值 |
DBL_MIN_10_EXP | 用 10 的 x 次幂表示 double 类型的规格化时,x 所能取的最小负整数值 |
LDBL_MIN_10_EXP | 用 10 的 x 次幂表示 long double 类型的规格化时,x 所能取的最小负整数值 |
FLT_MAX_EXP | 用 FLT_RADIX 的 x-1 次幂表示 float 类型的规格化(Normalized)时,x 所能取的最大正整数值 |
DBL_MAX_EXP | 用 FLT_RADIX 的 x-1 次幂表示 double 类型的规格化时,x 所能取的最大正整数值 |
LDBL_MAX_EXP | 用 FLT_RADIX 的 x-1 次幂表示 long double 类型的规格化时,x 所能取的最大正整数值 |
FLT_MAX_10_EXP | 用 10 的 x 次幂表示 float 类型的规格化时,x 所能取的最大正整数值 |
DBL_MAX_10_EXP | 用 10 的 x 次幂表示 double 类型的规格化时,x 所能取的最大正整数值 |
LDBL_MAX_10_EXP | 用 10 的 x 次幂表示 long double 类型的规格化时,x 所能取的最大正整数值 |
FLT_ROUNDS | 默认的浮点数类型的舍入(Rounding)模式 |
FLT_EVAL_METHOD | C++11默认的浮点数类型的反规格化(Denormalization)模式 |