Standard library header <cfenv>
From cppreference.com
                    
                                        
                    
                    
                                                            
                    This header was originally in the C standard library as <fenv.h>.
This header is part of the floating-point environment library.
Types
| fenv_t | The type representing the entire floating-point environment | 
| fexcept_t | The type representing all floating-point status flags collectively | 
Functions
|    (C++11)  | 
   clears the specified floating-point status flags  (function)  | 
|    (C++11)  | 
   determines which of the specified floating-point status flags are set  (function)  | 
|    (C++11)  | 
   raises the specified floating-point exceptions  (function)  | 
|    (C++11)(C++11)  | 
  copies the state of the specified floating-point status flags from or to the floating-point environment  (function)  | 
|    (C++11)(C++11)  | 
   gets or sets rounding  direction   (function)  | 
|    (C++11)  | 
    saves or restores the current floating point environment  (function)  | 
|    (C++11)  | 
   saves the environment, clears all status flags and ignores all future errors  (function)  | 
|    (C++11)  | 
   restores the floating-point environment and raises the previously raise exceptions  (function)  | 
Macros
|    floating-point exceptions   (macro constant)  | |
|    floating-point rounding direction  (macro constant)  | |
|    (C++11)  | 
   default floating-point environment  (macro constant)  | 
Synopsis
namespace std { // types typedef /*object type*/ fenv_t; typedef /*integer type*/ fexcept_t; // functions int feclearexcept(int except); int fegetexceptflag(fexcept_t *pflag, int except); int feraiseexcept(int except); int fesetexceptflag(const fexcept_t *pflag, int except); int fetestexcept(int except); int fegetround(void); int fesetround(int mode); int fegetenv(fenv_t *penv); int feholdexcept(fenv_t *penv); int fesetenv(const fenv_t *penv); int feupdateenv(const fenv_t *penv); }