次の方法で共有


feraiseexcept

指定した浮動小数点例外を発生させます。

構文

int feraiseexcept(
   int excepts
);

パラメーター

excepts
発生させる浮動小数点例外。

戻り値

指定したすべての例外が正常に発生した場合は、0 を返します。

解説

feraiseexcept 関数は、excepts で指定された浮動小数点例外を発生させようとします。 feraiseexcept関数では、<fenv.h で定義されている次の例外マクロがサポート>。

例外処理マクロ 説明
FE_DIVBYZERO 前の浮動小数点演算で特異点エラーまたは極エラーが発生しました。無限大の値が作成されました。
FE_INEXACT 前の浮動小数点演算の格納結果は強制的に丸められました。
FE_INVALID 前の浮動小数点演算でドメイン エラーが発生しました。
FE_OVERFLOW 範囲エラーが発生しました。前の浮動小数点演算結果は大きすぎて表現できませんでした。
FE_UNDERFLOW 前の浮動小数点演算結果は小さすぎて最大有効桁数で表現できませんでした。
FE_ALL_EXCEPT すべてのサポートされる浮動小数点例外のビット演算 OR。

excepts 引数は、0、例外処理マクロ値のいずれか、または複数のサポートされる例外処理マクロのビット演算 OR の場合があります。 指定した例外マクロのいずれかが FE_OVERFLOW または FE_UNDERFLOWの場合、 FE_INEXACT 例外が副作用として発生する可能性があります。

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

Microsoft 固有: excepts で指定された例外は、 FE_INVALIDFE_DIVBYZEROFE_OVERFLOWFE_UNDERFLOWFE_INEXACTの順序で発生します。 ただし、exceptsで指定されていない場合でも、FE_OVERFLOWまたはFE_UNDERFLOWが発生した場合は、FE_INEXACTを発生させることができます。

要件

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

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

関連項目

関数リファレンス (アルファベット順)
fesetexceptflag
feholdexcept
fetestexcept
feupdateenv