int fegetexceptflag (fexcept_t* flagp, int excepts);
Get floating-point exception flags
Attempts to store a representation of the floating-point exceptions specified by excepts into the fexcept_t object pointed by flagp.


Pointer to a fexcept_t object where the representation is stored.
Bitmask value: A combination (with bitwise OR) of any number of floating-point exception values supported by the implementation:
macro valuedescription
FE_DIVBYZEROPole error: division by zero, or some other asymptotically infinite result (from finite arguments).
FE_INEXACTInexact: the result is not exact.
FE_INVALIDDomain error: At least one of the arguments is a value for which the function is not defined.
FE_OVERFLOWOverflow range error: The result is too large in magnitude to be represented as a value of the return type.
FE_UNDERFLOWUnderflow range error: The result is too small in magnitude to be represented as a value of the return type.
FE_ALL_EXCEPTAll exceptions (selects all of the exceptions supported by the implementation).
Certain library implementations may support additional floating-point exception values (with their corresponding macros also beginning with FE_).
Libraries may define in <fenv.h> only the macro values above they support (the others may not be defined).
At least all of the above macro values are defined in <cfenv> (even if not supported by the implementation).

Return Value

Zero, if the representation was successfully stored.
A non-zero value otherwise.

Data races

Concurrently calling this function is safe, causing no data races.


No-throw guarantee: this function never throws exceptions.

See also