函式
<cfenv>

fesetenv

int fesetenv (const fenv_t* envp);
設定浮點環境
嘗試建立由 envp 指向的物件所表示的浮點環境狀態。

浮點環境是一組影響浮點計算的狀態標誌和控制模式(包括浮點異常舍入方向模式)。

如果成功,該函式將更改當前浮點環境的狀態,而不會實際引發該狀態中指定的異常。

呼叫此函式的程式應確保在呼叫時啟用了 pragma FENV_ACCESS

引數

envp
指向 fenv_t 值的指標(由先前對 fegetenvfeholdexcept 的呼叫填充),或者是浮點環境宏值之一。
描述
FE_DFL_ENV預設浮點環境(與程式啟動時相同)。
某些庫實現可能支援額外的浮點環境狀態值(其對應的宏也以 FE_ 開頭)。

返回值

如果狀態成功建立,則為零。
否則返回一個非零值。

資料競爭

每個執行緒維護一個獨立的浮點環境及其自身的狀態。生成一個新執行緒會複製當前狀態。[此規定適用於 C11 和 C++11 實現]

異常

無異常保證:此函式從不丟擲異常。

另見