标准库头文件 <float.h>
来自 cppreference.cn
[编辑] 宏
FLT_RADIX |
所有三种浮点类型表示法使用的基数(整数基数) (宏常量) |
DECIMAL_DIG (C99) |
从 long double 转换为十进制,至少需要 DECIMAL_DIG 位数字,再转换回 long double 是恒等转换:这是序列化/反序列化 long double 所需的十进制精度(宏常量) |
FLT_DECIMAL_DIGDBL_DECIMAL_DIGLDBL_DECIMAL_DIG (C11) |
从 float/double/long double 转换为十进制,至少需要 FLT_DECIMAL_DIG /DBL_DECIMAL_DIG /LDBL_DECIMAL_DIG 位数字,再转换回是恒等转换:这是序列化/反序列化浮点值所需的十进制精度。定义为至少 6、10 和 10 分别,或者 IEEE 浮点数为 9,IEEE 双精度浮点数为 17(另请参见 C++ 模拟:max_digits10 )(宏常量) |
FLT_MINDBL_MINLDBL_MIN |
float、double 和 long double 的最小归一化正值 (宏常量) |
FLT_TRUE_MINDBL_TRUE_MINLDBL_TRUE_MIN (C11) |
float、double 和 long double 的最小正值 (宏常量) |
FLT_MAXDBL_MAXLDBL_MAX |
float、double 和 long double 的最大有限值 (宏常量) |
FLT_EPSILONDBL_EPSILONLDBL_EPSILON |
1.0 与 float、double 和 long double 的下一个可表示值之间的绝对值差 (宏常量) |
FLT_DIGDBL_DIGLDBL_DIG |
保证在文本中保留的十进制数字位数 → float/double/long double → 文本往返,不会因舍入或溢出而发生更改(有关详细信息,请参见 C++ 模拟 digits10 )(宏常量) |
FLT_MANT_DIGDBL_MANT_DIGLDBL_MANT_DIG |
浮点尾数中且可以表示而不会损失 float、double 和 long double 精度的基数-FLT_RADIX 数字位数(宏常量) |
FLT_MIN_EXPDBL_MIN_EXPLDBL_MIN_EXP |
最小负整数,使得 FLT_RADIX 的幂次方(比该整数小 1)是归一化的 float、double 和 long double(宏常量) |
FLT_MIN_10_EXPDBL_MIN_10_EXPLDBL_MIN_10_EXP |
最小负整数,使得 10 的该次幂是归一化的 float、double 和 long double (宏常量) |
FLT_MAX_EXPDBL_MAX_EXPLDBL_MAX_EXP |
最大正整数,使得 FLT_RADIX 的幂次方(比该整数小 1)是可表示的有限 float、double 和 long double(宏常量) |
FLT_MAX_10_EXPDBL_MAX_10_EXPLDBL_MAX_10_EXP |
最大正整数,使得 10 的该次幂是可表示的有限 float、double 和 long double (宏常量) |
浮点算术的舍入模式 (宏常量) | |
(C99) |
指定所有算术运算以什么精度完成 (宏常量) |
FLT_HAS_SUBNORMDBL_HAS_SUBNORMLDBL_HAS_SUBNORM (C11)(在 C23 中已弃用) |
该类型是否支持次正规(非正规化)数字 -1 – 不可确定,0 – 不存在,1 – 存在 (宏常量) |
本节尚不完整 原因:添加来自 B.6.2、B.6.3 的宏 |
[编辑] 概要
#define FLT_ROUNDS /* see definition */ #define FLT_EVAL_METHOD /* see definition */ #define FLT_HAS_SUBNORM /* see definition */ #define DBL_HAS_SUBNORM /* see definition */ #define LDBL_HAS_SUBNORM /* see definition */ #define FLT_RADIX /* see definition */ #define FLT_MANT_DIG /* see definition */ #define DBL_MANT_DIG /* see definition */ #define LDBL_MANT_DIG /* see definition */ #define FLT_DECIMAL_DIG /* see definition */ #define DBL_DECIMAL_DIG /* see definition */ #define LDBL_DECIMAL_DIG /* see definition */ #define DECIMAL_DIG /* see definition */ #define FLT_DIG /* see definition */ #define DBL_DIG /* see definition */ #define LDBL_DIG /* see definition */ #define FLT_MIN_EXP /* see definition */ #define DBL_MIN_EXP /* see definition */ #define LDBL_MIN_EXP /* see definition */ #define FLT_MIN_10_EXP /* see definition */ #define DBL_MIN_10_EXP /* see definition */ #define LDBL_MIN_10_EXP /* see definition */ #define FLT_MAX_EXP /* see definition */ #define DBL_MAX_EXP /* see definition */ #define LDBL_MAX_EXP /* see definition */ #define FLT_MAX_10_EXP /* see definition */ #define DBL_MAX_10_EXP /* see definition */ #define LDBL_MAX_10_EXP /* see definition */ #define FLT_MAX /* see definition */ #define DBL_MAX /* see definition */ #define LDBL_MAX /* see definition */ #define FLT_EPSILON /* see definition */ #define DBL_EPSILON /* see definition */ #define LDBL_EPSILON /* see definition */ #define FLT_MIN /* see definition */ #define DBL_MIN /* see definition */ #define LDBL_MIN /* see definition */ #define FLT_TRUE_MIN /* see definition */ #define DBL_TRUE_MIN /* see definition */ #define LDBL_TRUE_MIN /* see definition */