fesetenv
現在の浮動小数点環境を設定します。
構文
int fesetenv(
const fenv_t *penv
);
パラメーター
penv
fegetenv
またはfeholdexcept
の呼び出しによって設定された浮動小数点環境を含むfenv_t
オブジェクトへのポインター。 FE_DFL_ENV
マクロを使用して、既定のスタートアップ浮動小数点環境を指定することもできます。
戻り値
環境が正常に設定された場合は 0 を返します。 それ以外の場合は、0 以外の値を返します。
解説
fesetenv
関数は、penv
が示す fenv_t
オブジェクトに格納されている値から現在の浮動小数点環境を設定します。 浮動小数点環境とは、浮動小数点計算に影響する一連の状態フラグと制御モードです。 環境には、丸めモードと、浮動小数点例外の状態フラグが含まれています。 penv
がFE_DFL_ENV
されていないか、有効なfenv_t
オブジェクトを指していない場合、後続の動作は未定義です。
この関数を呼び出すと、 penv
オブジェクト内にある例外状態フラグが設定されますが、これらの例外は発生しません。
この関数を使用するには、呼び出しの前に #pragma fenv_access(on)
ディレクティブを使用してアクセスを妨げる可能性のある浮動小数点の最適化をオフにする必要があります。 詳細については、fenv_access
を参照してください。
要件
機能 | C ヘッダー | C++ ヘッダー |
---|---|---|
fesetenv |
<fenv.h> | <cfenv> |
互換性の詳細については、「 Compatibility」を参照してください。
関連項目
関数リファレンス (アルファベット順)
fegetenv
feclearexcept
feholdexcept
fesetexceptflag