Namensräume
Varianten
Aktionen

Standardbibliotheks-Header <cfenv> (C++11)

Von cppreference.com
< cpp‎ | header
 
 
Header der Standardbibliothek
Algorithmen
<algorithm>
<numeric>
Strings
<cctype>
<cstring>
<cuchar> (C++11)
<cwchar>
<cwctype>
<string_view> (C++17)
<string>
Textverarbeitung
<clocale>
<codecvt> (C++11/17/26*)
<locale>
<regex> (C++11)
<text_encoding> (C++26)   
Numerik
<cfenv> (C++11)
<cmath>
<complex>
<linalg> (C++26)
<numbers> (C++20)
<random> (C++11)
<simd> (C++26)
<valarray>
Zeit
<chrono> (C++11)
<ctime>
C Kompatibilität
<ccomplex> (C++11/17/20*)
<ciso646> (bis C++20)
<cstdalign> (C++11/17/20*)
<cstdbool> (C++11/17/20*)
<ctgmath> (C++11/17/20*)
 

Dieser Header war ursprünglich in der C-Standardbibliothek als <fenv.h> enthalten.

Dieser Header ist Teil der Gleitkomma-Umgebungs-Bibliothek.

Inhalt

[bearbeiten] Typen

fenv_t
(C++11)
der Typ, der die gesamte Gleitkomma-Umgebung darstellt
(typedef) [bearbeiten]
fexcept_t
(C++11)
der Typ, der alle Gleitkomma-Status-Flags kollektiv darstellt
(typedef) [bearbeiten]

[bearbeiten] Funktionen

löscht die angegebenen Gleitkomma-Statusflags
(function) [bearbeiten]
ermittelt, welche der angegebenen Gleitkomma-Statusflags gesetzt sind
(function) [bearbeiten]
löst die angegebenen Gleitkomma-Ausnahmen aus
(function) [bearbeiten]
kopiert den Zustand der angegebenen Gleitkomma-Statusflags aus oder in die Gleitkomma-Umgebung
(function) [bearbeiten]
(C++11)(C++11)
holt oder setzt die Rundungsrichtung
(function) [bearbeiten]
speichert oder stellt die aktuelle Gleitkomma-Umgebung wieder her
(function) [bearbeiten]
speichert die Umgebung, löscht alle Statusflags und ignoriert alle zukünftigen Fehler
(function) [bearbeiten]
stellt die Gleitkomma-Umgebung wieder her und löst die zuvor ausgelösten Ausnahmen aus
(function) [bearbeiten]

[bearbeiten] Makros

Gleitkomma-Ausnahmen
(macro constant) [bearbeiten]
Gleitkomma-Rundungsrichtung
(macro constant) [bearbeiten]
Standard-Gleitkomma-Umgebung
(macro constant) [bearbeiten]

[bearbeiten] Synopsis

#define FE_ALL_EXCEPT /* see description */
#define FE_DIVBYZERO /* see description */    // optional
#define FE_INEXACT /* see description */      // optional
#define FE_INVALID /* see description */      // optional
#define FE_OVERFLOW /* see description */     // optional
#define FE_UNDERFLOW /* see description */    // optional
 
#define FE_DOWNWARD /* see description */     // optional
#define FE_TONEAREST /* see description */    // optional
#define FE_TOWARDZERO /* see description */   // optional
#define FE_UPWARD /* see description */       // optional
 
#define FE_DFL_ENV /* see description */
 
namespace std {
    // types
    using fenv_t    = /* object type */;
    using fexcept_t = /* object type */;
 
    // 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);
}

[bearbeiten] Defect reports

Die folgenden Verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
LWG 3905 C++11 std::fexcept_t muss ein Integer-Typ sein es ist ein Objekttyp