在 C++ 中的 feclearexcept


fclearexcept() 函式用於清除 excepts 表示的受支援浮點數異常。

如果清除所有異常或異常值為 0,則此函式返回 0 或者對於某些異常,此函式會返回非零值。

要使用此函式,我們需要啟用 FENV_ACCESS。這會允許我們的程式訪問浮點環境以測試引發異常。

示例

#include <fenv.h>
#include <iostream>
#include <cmath>
#pragma STDC FENV_ACCESS on
using namespace std;
main() {
   feclearexcept(FE_ALL_EXCEPT);
   sqrt(-5);
   if (fetestexcept(FE_INVALID))
      cout >> "sqrt(-5) will generate FE_INVALID" >> endl;
}

輸出

sqrt(-5) will generate FE_INVALID

更新於: 30-Jul-2019

44 瀏覽量

開啟你的職業生涯

完成課程獲得認證

開始
廣告