©
本文档使用
php.cn手册 发布
在头文件<math.h>中定义 | ||
---|---|---|
typedef /*implementation defined*/ float_t | (自 C99) | |
typedef /*implementation defined*/ double_t | (自 C99) |
float_t和double_t类型的浮点类型至少与float和double一样宽,并且double_t至少与float_t一样宽。 FLT_EVAL_METHOD的值决定了float_t和double_t的类型。
FLT_EVAL_METHOD | 说明 |
---|---|
0 | float_t和double_t分别等价于float和double |
1 | float_t和double_t都相当于double |
2 | float_t和double_t都相当于long double |
其他 | float_t和double_t都是实现定义的 |
#include <float.h>#include <math.h>#include <stdio.h> int main(void){ printf("%d\n", FLT_EVAL_METHOD); printf("%zu %zu\n", sizeof(float),sizeof(float_t)); printf("%zu %zu\n", sizeof(double),sizeof(double_t)); return 0;}
可能的输出:
04 48 8
C11标准(ISO / IEC 9899:2011):
7.12 <math.h>(p:231)
C99标准(ISO / IEC 9899:1999):
7.12 <math.h>(p:212)