FLT_EVAL_METHOD
From cppreference.net
C++
Utilities library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Type support
| Basic types | |||||||||||||||||||||
| Fixed width integer types (C++11) | |||||||||||||||||||||
| Fixed width floating-point types (C++23) | |||||||||||||||||||||
|
|||||||||||||||||||||
| Numeric limits | |||||||||||||||||||||
| C numeric limits interface | |||||||||||||||||||||
| Runtime type information | |||||||||||||||||||||
|
|||||||||||||||||||||
C numeric limits interface
|
FLT_EVAL_METHOD
(C++11)
|
|
定義済みヘッダー
<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
|