feupdateenv
儲存目前引發的浮點例外狀況、還原指定的浮點環境狀態,然後引發儲存的浮點例外狀況。
語法
int feupdateenv(
const fenv_t* penv
);
參數
penv
fenv_t
物件的指標,其中包含呼叫 或 feholdexcept
所fegetenv
設定的浮點環境。 您也可以使用 FE_DFL_ENV
巨集來指定預設啟動浮點環境。
傳回值
如果順利完成所有動作,則傳回 0。 否則,它會傳回非零值。
備註
feupdateenv
函式會執行多個動作。 首先,它會將目前引發的浮點例外狀況狀態旗標儲存在自動儲存體中。 然後,它會從儲存在由 penv
指向之 fenv_t
物件的值中,設定目前的浮點環境。 如果 penv
不是 FE_DFL_ENV
或未指向有效的 fenv_t
物件,則後續的行為為未定義。 最後,feupdateenv
引發儲存在本機的浮點例外狀況。
若要使用此函式,您必須在呼叫之前使用 #pragma fenv_access(on)
指示詞,以關閉可能會妨礙存取的浮點最佳化作業。 如需詳細資訊,請參閱fenv_access
。
需求
函式 | C 標頭 | C++ 標頭 |
---|---|---|
feupdateenv |
<fenv.h> | <cfenv> |
如需相容性詳細資訊,請參閱相容性。