Namespaces
Variants

Standard library header <cfloat>

From cppreference.net
Standard library headers

Cet en-tête était à l'origine dans la bibliothèque standard C sous le nom de <float.h> .

Cet en-tête fait partie de la bibliothèque de support des types , en particulier, il fait partie de l' interface des limites numériques C .

Macros

FLT_RADIX
le radix (base entière) utilisé par la représentation des trois types de nombres à virgule flottante
(constante macro)
DECIMAL_DIG
(C++11)
conversion de long double vers décimal avec au moins DECIMAL_DIG chiffres et retour vers long double est une conversion identité : c'est la précision décimale requise pour sérialiser/désérialiser un long double (voir aussi std::numeric_limits::max_digits10 )
(constante macro)
FLT_DECIMAL_DIG DBL_DECIMAL_DIG LDBL_DECIMAL_DIG
(C++17)
conversion de float / double / long double en décimal avec au moins FLT_DECIMAL_DIG / DBL_DECIMAL_DIG / LDBL_DECIMAL_DIG chiffres et retour est une conversion identité : c'est la précision décimale requise pour sérialiser/désérialiser une valeur en virgule flottante (voir aussi std::numeric_limits::max_digits10 ). Défini à au moins 6 , 10 , et 10 respectivement, ou 9 pour float IEEE et 17 pour double IEEE.
(constante macro)
FLT_MIN DBL_MIN LDBL_MIN
valeur normalisée positive minimale de float , double et long double respectivement
(constante macro)
FLT_TRUE_MIN DBL_TRUE_MIN LDBL_TRUE_MIN
(C++17)
valeur positive minimale de float , double et long double respectivement
(constante macro)
FLT_MAX DBL_MAX LDBL_MAX
valeur finie maximale de float , double et long double respectivement
(constante macro)
FLT_EPSILON DBL_EPSILON LDBL_EPSILON
différence entre 1.0 et la valeur représentable suivante pour float , double et long double respectivement
(constante macro)
FLT_DIG DBL_DIG LDBL_DIG
nombre de chiffres décimaux garantis d'être préservés dans la conversion texte → float / double / long double → texte sans modification due à l'arrondi ou au dépassement (voir std::numeric_limits::digits10 pour l'explication)
(constante macro)
FLT_MANT_DIG DBL_MANT_DIG LDBL_MANT_DIG
nombre de chiffres en base FLT_RADIX pouvant être représentés sans perte de précision pour float , double et long double respectivement
(constante macro)
FLT_MIN_EXP DBL_MIN_EXP LDBL_MIN_EXP
entier négatif minimal tel que FLT_RADIX élevé à la puissance un de moins que cet entier est un float , double et long double normalisé respectivement
(constante macro)
FLT_MIN_10_EXP DBL_MIN_10_EXP LDBL_MIN_10_EXP
entier négatif minimum tel que 10 élevé à cette puissance soit un float , double et long double normalisé respectivement
(constante macro)
FLT_MAX_EXP DBL_MAX_EXP LDBL_MAX_EXP
entier positif maximum tel que FLT_RADIX élevé à la puissance de cet entier moins un est une valeur finie représentable float , double et long double respectivement
(constante macro)
FLT_MAX_10_EXP DBL_MAX_10_EXP LDBL_MAX_10_EXP
entier positif maximum tel que 10 élevé à cette puissance soit un float , double et long double fini représentable respectivement
(constante macro)
mode d'arrondi par défaut de l'arithmétique à virgule flottante
(constante macro)
spécifie la précision dans laquelle toutes les opérations arithmétiques sont effectuées
(constante macro)
FLT_HAS_SUBNORM DBL_HAS_SUBNORM LDBL_HAS_SUBNORM
(C++17)
spécifie si le type prend en charge les nombres sous-normaux ( dénormaux ) :
- 1 – indéterminable, 0 – absent, 1 – présent
(constante macro)

Synopsis

#define FLT_ROUNDS           /* voir définition */
#define FLT_EVAL_METHOD      /* voir définition */
#define FLT_HAS_SUBNORM      /* voir définition */
#define DBL_HAS_SUBNORM      /* voir définition */
#define LDBL_HAS_SUBNORM     /* voir définition */
#define FLT_RADIX            /* voir définition */
#define FLT_MANT_DIG         /* voir définition */
#define DBL_MANT_DIG         /* voir définition */
#define LDBL_MANT_DIG        /* voir définition */
#define FLT_DECIMAL_DIG      /* voir définition */
#define DBL_DECIMAL_DIG      /* voir définition */
#define LDBL_DECIMAL_DIG     /* voir définition */
#define DECIMAL_DIG          /* voir définition */
#define FLT_DIG              /* voir définition */
#define DBL_DIG              /* voir définition */
#define LDBL_DIG             /* voir définition */
#define FLT_MIN_EXP          /* voir définition */
#define DBL_MIN_EXP          /* voir définition */
#define LDBL_MIN_EXP         /* voir définition */
#define FLT_MIN_10_EXP       /* voir définition */
#define DBL_MIN_10_EXP       /* voir définition */
#define LDBL_MIN_10_EXP      /* voir définition */
#define FLT_MAX_EXP          /* voir définition */
#define DBL_MAX_EXP          /* voir définition */
#define LDBL_MAX_EXP         /* voir définition */
#define FLT_MAX_10_EXP       /* voir définition */
#define DBL_MAX_10_EXP       /* voir définition */
#define LDBL_MAX_10_EXP      /* voir définition */
#define FLT_MAX              /* voir définition */
#define DBL_MAX              /* voir définition */
#define LDBL_MAX             /* voir définition */
#define FLT_EPSILON          /* voir définition */
#define DBL_EPSILON          /* voir définition */
#define LDBL_EPSILON         /* voir définition */
#define FLT_MIN              /* voir définition */
#define DBL_MIN              /* voir définition */
#define LDBL_MIN             /* voir définition */
#define FLT_TRUE_MIN         /* voir définition */
#define DBL_TRUE_MIN         /* voir définition */
#define LDBL_TRUE_MIN        /* voir définition */

Voir aussi

Documentation C pour Limites des types à virgule flottante