Standard library header <cfenv> (C++11)
From cppreference.net
Dieser Header war ursprünglich in der C-Standardbibliothek als <fenv.h> enthalten.
Dieser Header ist Teil der Gleitkommaumgebung -Bibliothek.
Inhaltsverzeichnis |
Typen
|
fenv_t
(C++11)
|
der Typ, der die gesamte Gleitkommaumgebung repräsentiert
(typedef) |
|
fexcept_t
(C++11)
|
der Typ, der alle Gleitkomma-Statusflags gemeinsam repräsentiert
(typedef) |
Funktionen
|
(C++11)
|
löscht die angegebenen Gleitkomma-Statusflags
(Funktion) |
|
(C++11)
|
bestimmt, welche der angegebenen Gleitkomma-Statusflags gesetzt sind
(Funktion) |
|
(C++11)
|
löst die angegebenen Gleitkomma-Ausnahmen aus
(Funktion) |
|
(C++11)
(C++11)
|
kopiert den Zustand der angegebenen Gleitkomma-Statusflags von oder zur Gleitkomma-Umgebung
(Funktion) |
|
(C++11)
(C++11)
|
ruft die Rundungsrichtung ab oder legt sie fest
(Funktion) |
|
(C++11)
|
speichert oder stellt die aktuelle Gleitkomma-Umgebung wieder her
(Funktion) |
|
(C++11)
|
speichert die Umgebung, löscht alle Statusflags und ignoriert alle zukünftigen Fehler
(Funktion) |
|
(C++11)
|
stellt die Gleitkomma-Umgebung wieder her und löst die zuvor ausgelösten Ausnahmen aus
(Funktion) |
Makros
|
Gleitkomma-Ausnahmen
(Makrokonstante) |
|
|
Gleitkomma-Rundungsrichtung
(Makrokonstante) |
|
|
(C++11)
|
Standard-Gleitkomma-Umgebung
(Makrokonstante) |
Übersicht
#define FE_ALL_EXCEPT /* siehe Beschreibung */ #define FE_DIVBYZERO /* siehe Beschreibung */ // optional #define FE_INEXACT /* siehe Beschreibung */ // optional #define FE_INVALID /* siehe Beschreibung */ // optional #define FE_OVERFLOW /* siehe Beschreibung */ // optional #define FE_UNDERFLOW /* siehe Beschreibung */ // optional #define FE_DOWNWARD /* siehe Beschreibung */ // optional #define FE_TONEAREST /* siehe Beschreibung */ // optional #define FE_TOWARDZERO /* siehe Beschreibung */ // optional #define FE_UPWARD /* siehe Beschreibung */ // optional #define FE_DFL_ENV /* siehe Beschreibung */ namespace std { // Typen using fenv_t = /* Objekttyp */; using fexcept_t = /* Objekttyp */; // Funktionen 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); }
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | Angewendet auf | Verhalten wie veröffentlicht | Korrektes Verhalten |
|---|---|---|---|
| LWG 3905 | C++11 |
std::fexcept_t
muss ein Ganzzahltyp sein
|
es ist ein Objekttyp |