Standard library header <cfenv> (C++11)
From cppreference.net
Cet en-tête était à l'origine dans la bibliothèque standard C sous le nom <fenv.h> .
Cet en-tête fait partie de la bibliothèque d'environnement à virgule flottante .
Table des matières |
Types
|
fenv_t
(C++11)
|
le type représentant l'environnement à virgule flottante complet
(typedef) |
|
fexcept_t
(C++11)
|
le type représentant collectivement tous les indicateurs d'état à virgule flottante
(typedef) |
Fonctions
|
(C++11)
|
efface les indicateurs d'état en virgule flottante spécifiés
(fonction) |
|
(C++11)
|
détermine quels indicateurs d'état en virgule flottante spécifiés sont activés
(fonction) |
|
(C++11)
|
déclenche les exceptions en virgule flottante spécifiées
(fonction) |
|
(C++11)
(C++11)
|
copie l'état des indicateurs d'état en virgule flottante spécifiés depuis ou vers l'environnement en virgule flottante
(fonction) |
|
(C++11)
(C++11)
|
obtient ou définit la direction d'arrondi
(fonction) |
|
(C++11)
|
sauvegarde ou restaure l'environnement en virgule flottante actuel
(fonction) |
|
(C++11)
|
sauvegarde l'environnement, efface tous les indicateurs d'état et ignore toutes les erreurs futures
(fonction) |
|
(C++11)
|
restaure l'environnement en virgule flottante et déclenche les exceptions précédemment levées
(fonction) |
Macros
|
exceptions en virgule flottante
(constante macro) |
|
|
direction d'arrondi en virgule flottante
(constante macro) |
|
|
(C++11)
|
environnement par défaut en virgule flottante
(constante macro) |
Synopsis
#define FE_ALL_EXCEPT /* voir description */ #define FE_DIVBYZERO /* voir description */ // optionnel #define FE_INEXACT /* voir description */ // optionnel #define FE_INVALID /* voir description */ // optionnel #define FE_OVERFLOW /* voir description */ // optionnel #define FE_UNDERFLOW /* voir description */ // optionnel #define FE_DOWNWARD /* voir description */ // optionnel #define FE_TONEAREST /* voir description */ // optionnel #define FE_TOWARDZERO /* voir description */ // optionnel #define FE_UPWARD /* voir description */ // optionnel #define FE_DFL_ENV /* voir description */ namespace std { // types using fenv_t = /* type d'objet */; using fexcept_t = /* type d'objet */; // fonctions 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); }
Rapports de défauts
Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.
| DR | Applicable à | Comportement publié | Comportement correct |
|---|---|---|---|
| LWG 3905 | C++11 |
std::fexcept_t
doit être un type entier
|
c'est un type objet |