feraiseexcept
引發指定的浮點例外狀況。
語法
int feraiseexcept(
int excepts
);
參數
excepts
要引發的浮點例外狀況。
傳回值
如果成功引發所有指定的例外狀況,則傳回 0。
備註
feraiseexcept
函式嘗試引發 excepts
指定的浮點例外狀況。 函 feraiseexcept
式支援在 fenv.h > 中 < 定義的這些例外狀況宏:
例外狀況巨集 | 描述 |
---|---|
FE_DIVBYZERO |
在稍早的浮點運算中發生的獨一性或極錯誤,已建立無限大值。 |
FE_INEXACT |
函式已強制四捨五入稍早的浮點運算預存結果。 |
FE_INVALID |
在稍早的浮點運算中發生的網域錯誤。 |
FE_OVERFLOW |
發生範圍錯誤,稍早的浮點運算結果太大,無法表示。 |
FE_UNDERFLOW |
稍早的浮點運算結果太小,無法以完整精確度表示;已建立 denormal 值。 |
FE_ALL_EXCEPT |
所有受支援浮點例外狀況的位元 OR。 |
excepts
引數可以是零、例外狀況巨集之一,或兩個或以上受支援例外狀況巨集的位元 OR。 如果其中一個指定的例外狀況宏是 FE_OVERFLOW
或 FE_UNDERFLOW
, FE_INEXACT
則例外狀況可能會引發為副作用。
若要使用此函式,您必須在呼叫之前使用 #pragma fenv_access(on)
指示詞,以關閉可能會妨礙存取的浮點最佳化作業。 如需詳細資訊,請參閱fenv_access
。
Microsoft 特定: 中指定的 excepts
例外狀況會依 、 、 FE_DIVBYZERO
、 FE_OVERFLOW
、 FE_UNDERFLOW
FE_INEXACT
的順序 FE_INVALID
引發。 不過, FE_INEXACT
即使 中 excepts
未指定,也可以在 或 FE_UNDERFLOW
引發時 FE_OVERFLOW
引發。
需求
函式 | C 標頭 | C++ 標頭 |
---|---|---|
feraiseexcept |
<fenv.h> | <cfenv> |
如需相容性詳細資訊,請參閱相容性。
另請參閱
字母函數參考
fesetexceptflag
feholdexcept
fetestexcept
feupdateenv
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應