fesetenv

現在の浮動小数点環境を設定します。

構文

int fesetenv(
   const fenv_t *penv
);

パラメーター

penv
へのfenv_t呼び出しによって設定された浮動小数点環境を含むオブジェクトへのfegetenvポインター。feholdexcept マクロを使用して、既定のスタートアップ浮動小数点環境を FE_DFL_ENV 指定することもできます。

戻り値

環境が正常に設定された場合は 0 を返します。 それ以外の場合は、0 以外の値を返します。

解説

fesetenv 関数は、penv が示す fenv_t オブジェクトに格納されている値から現在の浮動小数点環境を設定します。 浮動小数点環境とは、浮動小数点計算に影響する一連の状態フラグと制御モードです。 環境には、丸めモードと、浮動小数点例外の状態フラグが含まれています。 有効なfenv_tオブジェクトをFE_DFL_ENV指していないか、または指していない場合penv、後続の動作は未定義です。

この関数を呼び出すと、オブジェクト内にある penv 例外状態フラグが設定されますが、これらの例外は発生しません。

この関数を使用するには、呼び出しの前に #pragma fenv_access(on) ディレクティブを使用してアクセスを妨げる可能性のある浮動小数点の最適化をオフにする必要があります。 詳細については、fenv_accessを参照してください。

必要条件

機能 C ヘッダー C++ ヘッダー
fesetenv <fenv.h> <cfenv>

互換性の詳細については、「 Compatibility」を参照してください。

関連項目

アルファベット順関数リファレンス
fegetenv
feclearexcept
feholdexcept
fesetexceptflag