Namespaces
Variants
Views
Actions

std::fegetexceptflag, std::fesetexceptflag

From cppreference.com
< cpp‎ | numeric‎ | fenv
Revision as of 10:24, 21 December 2020 by Space Mission (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
 
 
 
Floating-point environment
Functions
fegetexceptflagfesetexceptflag
(C++11)(C++11)
(C++11)(C++11)
(C++11)(C++11)
Macro constants
(C++11)
 
Defined in header <cfenv>
int fegetexceptflag( std::fexcept_t* flagp, int excepts );
(1) (since C++11)
int fesetexceptflag( const std::fexcept_t* flagp, int excepts );
(2) (since C++11)

1) Attempts to obtain the full contents of the floating-point exception flags that are listed in the bitmask argument excepts, which is a bitwise OR of the floating point exception macros.

2) Attempts to copy the full contents of the floating-point exception flags that are listed in excepts from flagp into the floating-point environment. Does not raise any exceptions, only modifies the flags.

The full contents of a floating-point exception flag is not necessarily a boolean value indicating whether the exception is raised or cleared. For example, it may be a struct which includes the boolean status and the address of the code that triggered the exception. These functions obtain all such content and obtain/store it in flagp in implementation-defined format.

[edit] Parameters

flagp - pointer to an std::fexcept_t object where the flags will be stored or read from
excepts - bitmask listing the exception flags to get/set

[edit] Return value

0 on success, non-zero otherwise.

[edit] See also

C documentation for fegetexceptflag, fesetexceptflag