©
本文档使用 PHP中文网手册 发布
在头文件<float.h>中定义 | ||
---|---|---|
#define FLT_EVAL_METHOD / *定义的实现* / | (自C99以来) |
指定除赋值和转换之外的所有浮点算术运算完成的精度。
值 | 说明 |
---|---|
除-1之外的负值 | 实现定义的行为 |
-1 | 默认的精度是未知的 |
0 | 所有的操作和常量都以所用类型的范围和精度进行评估。另外,float_t和double_t分别相当于float和double |
1 | 所有操作和常量都以double的范围和精度进行评估。另外,float_t和double_t都相当于double |
2 | 所有操作和常量都在long double的范围和精度中进行评估。另外,float_t和double_t都相当于long double |
无论FLT_EVAL_METHOD的值如何,都可能会收缩任何浮点表达式,也就是说,计算好像所有中间结果都具有无限范围和精度(除非#pragma STDC FP_CONTRACT处于关闭状态)。
投射和分配剥离任何无关范围和精度:这模拟了将扩展精度FPU寄存器中的值存储到标准大小内存位置的操作。
| FLT_EVAL_METHOD的C ++文档 |