函数
<cfenv>

fegetexceptflag

int fegetexceptflag (fexcept_t* flagp, int excepts);
获取浮点异常标志
尝试将由 excepts 指定的浮点异常的表示形式存储到由 flagp 指向的 fexcept_t 对象中。

参数

flagp
指向一个 fexcept_t 对象的指针,该表示形式将存储于此。
excepts
位掩码值:实现所支持的任意数量的浮点异常值的组合(通过按位或运算)。
宏值描述
FE_DIVBYZERO极点错误:除以零,或一些其他渐近无穷大的结果(由有限参数产生)。
FE_INEXACT不精确:结果不精确。
FE_INVALID定义域错误:至少有一个参数是函数未定义的值。
FE_OVERFLOW上溢范围错误:结果的量级太大,无法表示为返回类型的值。
FE_UNDERFLOW下溢范围错误:结果的量级太小,无法表示为返回类型的值。
FE_ALL_EXCEPT所有异常(选择实现支持的所有异常)。
某些库实现可能支持额外的浮点异常值(其对应的宏也以 FE_ 开头)。
库可能仅在 <fenv.h> 中定义它们支持的上述宏值(其他宏可能未定义)。
至少所有上述宏值都在 <cfenv> 中有定义(即使实现不支持)。

返回值

如果表示形式成功存储,则为零。
否则为非零值。

数据竞争

并发调用此函数是安全的,不会导致数据竞争。

异常

无异常保证:此函数从不抛出异常。

另见