Namespaces
Variants

FLT_EVAL_METHOD

From cppreference.net
Utilities library
定義済みヘッダー <cfloat>
#define FLT_EVAL_METHOD /* implementation-defined */
(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 documentation for FLT_EVAL_METHOD