fesetenv
设置当前的浮点环境。
语法
int fesetenv(
const fenv_t *penv
);
参数
penv
指向 fenv_t
对象的指针,其中包含通过调用 fegetenv
或 feholdexcept
设置的浮点环境。 此外,也可使用 FE_DFL_ENV
宏指定默认启动浮点环境。
返回值
如果已成功设置环境,则返回 0。 否则,返回一个非零值。
备注
fesetenv
函数将从存储在由 penv
指向的 fenv_t
对象中的值设置当前浮点环境。 浮点环境是一系列影响浮点计算的状态标志和控件模式。 此环境包括舍入模式和浮点异常的状态标志。 如果 penv
不是 FE_DFL_ENV
,或者不指向有效的 fenv_t
对象,则不定义后续行为。
对此函数的调用会设置 penv
对象中的异常状态标志,但它不会引发这些异常。
若要使用此函数,必须在调用前先使用 #pragma fenv_access(on)
指令关闭可能会阻止访问的浮点优化。 有关详细信息,请参阅 fenv_access
。
要求
函数 | C 标头 | C++ 标头 |
---|---|---|
fesetenv |
<fenv.h> | <cfenv> |
有关兼容性的详细信息,请参阅 兼容性。
另请参阅
按字母顺序显示的函数参考
fegetenv
feclearexcept
feholdexcept
fesetexceptflag