HP-UX Reference (11i v1 05/09) - 3 Library Functions A-M (vol 6)

f
fetestexcept(3M) fetestexcept(3M)
NAME
fetestexcept() - test floating-point exceptions
SYNOPSIS
#include <fenv.h>
int fetestexcept(int excepts);
DESCRIPTION
The fetestexcept()
function determines which of a specified subset of the exception flags are
currently set. The excepts argument specifies the exception flags to be queried. The argument can be con-
structed as a bitwise OR of the exception macros:
FE_INEXACT , FE_DIVBYZERO , FE_UNDERFLOW ,
FE_OVERFLOW , and FE_INVALID . FE_ALL_EXCEPT
represents all the exceptions.
The ISO/ANSI C committee has approved the
fetestexcept()
function for inclusion in the C9X draft
standard.
To use this function, compile either with the default
-Ae option or with the -Aa and -D_HPUX_SOURCE
options. Make sure your program includes <
fenv.h>. Link in the math library by specifying -lm on the
compiler or linker command line.
For more information, see the HP-UX Floating-Point Guide.
RETURN VALUE
The
fetestexcept() function returns the bitwise OR of the exception macros corresponding to the
currently set exceptions included in excepts.
ERRORS
No errors are defined.
EXAMPLE
Call
f() if invalid is set, then g() if overflow is set:
#include <fenv.h>
/*...*/
int set_excepts;
/* operations that may raise exceptions */
set_excepts = fetestexcept(FE_INVALID | FE_OVERFLOW);
if (set_excepts & FE_INVALID) f();
if (set_excepts & FE_OVERFLOW) g();
SEE ALSO
feclearexcept(3M), fegetexceptflag(3M), fegettrapenable(3M), feraiseexcept(3M), fesetexceptflag(3M),
fesettrapenable(3M), fenv(5).
HP-UX 11i Version 1: September 2005 1 Hewlett-Packard Company Section 3257