| FECLEAREXCEPT(3) | Library Functions Manual | FECLEAREXCEPT(3) | 
feclearexcept, fegetexceptflag,
  feraiseexcept,
  fesetexceptflag, fetestexcept
  —
#include <fenv.h>
#pragma STDC FENV_ACCESS ON
int
  
  feclearexcept(int
    excepts);
int
  
  fegetexceptflag(fexcept_t
    *flagp, int
    excepts);
int
  
  feraiseexcept(int
    excepts);
int
  
  fesetexceptflag(const
    fexcept_t *flagp, int
    excepts);
int
  
  fetestexcept(int
    excepts);
feclearexcept() routine clears the floating-point
  exception flags specified by excepts, whereas
  feraiseexcept() raises the specified exceptions.
  Raising an exception causes the corresponding flag to be set, and a
  SIGFPE is delivered to the process if the exception is
  unmasked.
The fetestexcept() function determines
    which flags are currently set, of those specified by
    excepts.
The fegetexceptflag() function stores the
    state of the exception flags specified in excepts in
    the opaque object pointed to by flagp. Similarly,
    fesetexceptflag() changes the specified exception
    flags to reflect the state stored in the object pointed to by
    flagp. Note that the flags restored with
    fesetexceptflag() must be a (not necessarily proper)
    subset of the flags recorded by a prior call to
    fegetexceptflag().
For all of these functions, the possible types of exceptions include those described in fenv(3). Some architectures may define other types of floating-point exceptions.
The fegetexceptflag() and
    fesetexceptflag() routines are preferred to
    fetestexcept() and
    feraiseexcept(), respectively, for saving and
    restoring exception flags. The latter do not re-raise exceptions and may
    preserve architecture-specific information such as addresses where
    exceptions occurred.
feclearexcept(),
  fegetexceptflag(),
  feraiseexcept(), and
  fesetexceptflag() functions return 0 upon success, and
  non-zero otherwise. The fetestexcept() function
  returns the bitwise OR of the values of the current exception flags that were
  requested.
feclearexcept(),
  fegetexceptflag(),
  feraiseexcept(),
  fesetexceptflag(), and
  fetestexcept() routines conform to
  ISO/IEC 9899:1999 (“ISO C99”).
| May 8, 2004 | NetBSD 9.4 |