FLT_EVAL_METHOD
來自 cppreference.com
定義於標頭檔案 <cfloat> |
||
#define FLT_EVAL_METHOD /* 由實現定義 */ |
(C++11 起) | |
指定除賦值和型別轉換之外,所有浮點算術運算的精度。
值 | 解釋 |
負值,除了 -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 暫存器中的值儲存到標準大小記憶體位置的操作。
[編輯] 參閱
C 文件 關於 FLT_EVAL_METHOD
|