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_INVALID
、 FE_DIVBYZERO
、 FE_OVERFLOW
、 FE_UNDERFLOW
、 FE_INEXACT
の順序で発生します。 ただし、excepts
で指定されていない場合でも、FE_OVERFLOW
またはFE_UNDERFLOW
が発生した場合は、FE_INEXACT
を発生させることができます。
要件
機能 | C ヘッダー | C++ ヘッダー |
---|---|---|
feraiseexcept |
<fenv.h> | <cfenv> |
互換性の詳細については、「 Compatibility」を参照してください。
関連項目
関数リファレンス (アルファベット順)
fesetexceptflag
feholdexcept
fetestexcept
feupdateenv