FE_OVERFLOW宏
概要:
#define FE_OVERFLOW value //value值由实现定义,为2的N次方。
描述:
该宏表示溢出范围异常,该宏会扩展为int类型的常量表达式,其值是2的N次方。如果结果是个绝对值很大的有限值,以至于在没有异常舍入误差的情况下无法使用对象指定的类型表示结果,将发生溢出范围异常。如果发生溢出范围异常,并且默认的舍入生效,函数将根据返回类型和正确值的符号返回一个正或者负HUGE_VAL(或者HUGE_VALF或者HUGE_VALL)值。
当且仅当实现通过feclearexcept、fegetexceptflag、feraiseexcept、fesetexceptflag、fetestexcept函数支持浮点异常时,宏FE_OVERFLOW才会被定义。
范例:
|
|
输出:
Exceptions: FE_INEXACT FE_OVERFLOW
在这个例子中,exp(1000.0)函数的返回值已经超出了double类型所能表示的范围。
相关内容:
FE_ALL_EXCEPT | 表示所有异常的宏。 |
FE_DIVBYZERO | 表示极点异常的宏。 |
FE_INEXACT | 表示不准确结果异常的宏。 |
FE_INVALID | 表示域异常的宏。 |
FE_UNDERFLOW | 表示下溢范围异常的宏。 |