std::numeric_limits — cppreference.com
<metanoindex/>
<tbody> </tbody>
| Déclaré dans l'en-tête <limits> |
||
|
|
||
Le modèle de classe numeric_limits fournit un moyen standard pour rechercher des propriétés différentes types fondamentaux (par exemple, la plus grande valeur possible pour le type int est std::numeric_limits<int>::max()) .
Original:
The numeric_limits class template provides a standardized way to query various properties of fundamental types (e.g. the largest possible value for type int is std::numeric_limits<int>::max()).
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Cette information est fournie par l'intermédiaire des spécialisations du modèle numeric_limits. La bibliothèque standard permet spécialisations disponibles pour tous les types fondamentaux:
Original:
This information is provided via specializations of the numeric_limits template. The standard library makes available specializations for all fundamental types:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
<tbody> </tbody>
| Déclaré dans l'en-tête <limits> |
||
|
|
||
En outre, une spécialisation existe pour chaque version de cv-qualifié de chaque type fondamental, identique à la spécialisation sans réserve, par exemple, std::numeric_limits<const int>, std::numeric_limits<volatile int> et std::numeric_limits<const volatile int> sont fournis et sont équivalentes à std::numeric_limits<int> .
Original:
Additionally, a specialization exists for every cv-qualified version of each fundamental type, identical to the unqualified specialization, e.g. std::numeric_limits<const int>, std::numeric_limits<volatile int>, and std::numeric_limits<const volatile int> are provided and are equivalent to std::numeric_limits<int>.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Les types de bibliothèques standards qui sont des alias des types fondamentaux (tels que std::size_t ou std::streamsize peut également être consulté avec les caractères de std::numeric_limits .
Original:
The standard library types that are aliases of fundamental types (such as std::size_t or std::streamsize may also be examined with the std::numeric_limits type traits.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
implémentations peuvent fournir des spécialisations de std::numeric_limits de mise en œuvre spécifiques aux types: par ex. GCC fournit. std::numeric_limits<__int128> bibliothèques peuvent ajouter des spécialisations pour la bibliothèque fournis par types, par exemple OpenEXR dispose std::numeric_limits<half> pour un 16-bit virgule flottante de type .
Original:
Implementations may provide specializations of std::numeric_limits for implementation-specific types: e.g. GCC provides std::numeric_limits<__int128>. Libraries may add specializations for library-provided types, e.g. OpenEXR provides std::numeric_limits<half> for a 16-bit floating-point type.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Constantes membres
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie les types pour lesquels std::numeric_limits est spécialisée Original: identifies types for which std::numeric_limits is specialized The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie les types signés Original: identifies signed types The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie les types entiers Original: identifies integer types The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie les types exacts Original: identifies exact types The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie types à virgule flottante qui peuvent représenter la valeur spéciale "infini positif" Original: identifies floating-point types that can represent the special value "positive infinity" The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie types à virgule flottante qui peuvent représenter la valeur spéciale "calme pas-a-number» (NaN) Original: identifies floating-point types that can represent the special value "quiet not-a-number" (NaN) The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie types à virgule flottante qui peuvent représenter la valeur spéciale "signalisation non-a-number» (NaN) Original: identifies floating-point types that can represent the special value "signaling not-a-number" (NaN) The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie le style utilisé par la dénormalisation du type à virgule flottante Original: identifies the denormalization style used by the floating-point type The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie les types à virgule flottante qui détectent une perte de précision que la perte de dénormalisation plutôt que des résultats inexacts Original: identifies the floating-point types that detect loss of precision as denormalization loss rather than inexact result The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie le type d'arrondi utilisé par le type Original: identifies the rounding style used by the type The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie les IEC 559/IEEE 754 types à virgule flottante Original: identifies the IEC 559/IEEE 754 floating-point types The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie des types qui représentent un ensemble fini de valeurs Original: identifies types that represent a finite set of values The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie les types qui gèrent les débordements avec l'arithmétique modulo Original: identifies types that handle overflows with modulo arithmetic The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
nombre de chiffres Original: number of The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
nombre de chiffres décimaux qui peuvent être représentées sans changement Original: number of decimal digits that can be represented without change The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
nombre de chiffres décimaux nécessaires pour différencier les valeurs de ce type Original: number of decimal digits necessary to differentiate all values of this type The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
la base ou la base utilisée par nombre entier de la représentation du type donné Original: the radix or integer base used by the representation of the given type The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
un de plus que la plus petite puissance négative de la racine qui est valide normalisé valeur à virgule flottante Original: one more than the smallest negative power of the radix that is a valid normalized floating-point value The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
la plus petite puissance négative de dix qui est valide normalisé valeur à virgule flottante Original: the smallest negative power of ten that is a valid normalized floating-point value The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
un de plus que la plus grande puissance entière de la racine qui est valide finie valeur à virgule flottante Original: one more than the largest integer power of the radix that is a valid finite floating-point value The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
la plus grande puissance entière de 10 qui est valide finie valeur à virgule flottante Original: the largest integer power of 10 that is a valid finite floating-point value The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie les types qui peuvent causer des opérations arithmétiques à piéger Original: identifies types which can cause arithmetic operations to trap The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
identifie types à virgule flottante qui détectent tinyness avant arrondis Original: identifies floating-point types that detect tinyness before rounding The text has been machine-translated via Google Translate. (constante membre statique publique) [edit] |
Fonctions membres
[ statique Original: static The text has been machine-translated via Google Translate. |
renvoie la plus petite valeur finie du type donné Original: returns the smallest finite value of the given type The text has been machine-translated via Google Translate. (fonction membre publique statique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
renvoie la plus petite valeur finie du type donné Original: returns the lowest finite value of the given type The text has been machine-translated via Google Translate. (fonction membre publique statique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
renvoie la plus grande valeur finie du type donné Original: returns the largest finite value of the given type The text has been machine-translated via Google Translate. (fonction membre publique statique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
renvoie la différence entre Original: returns the difference between The text has been machine-translated via Google Translate. (fonction membre publique statique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
retourne l'erreur d'arrondi maximum de la donnée à virgule flottante de type Original: returns the maximum rounding error of the given floating-point type The text has been machine-translated via Google Translate. (fonction membre publique statique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
renvoie la valeur infinie positive de la donnée à virgule flottante de type Original: returns the positive infinity value of the given floating-point type The text has been machine-translated via Google Translate. (fonction membre publique statique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
renvoie une valeur NaN calme de la donnée à virgule flottante de type Original: returns a quiet NaN value of the given floating-point type The text has been machine-translated via Google Translate. (fonction membre publique statique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
renvoie une valeur NaN de signalisation de la donnée à virgule flottante de type Original: returns a signaling NaN value of the given floating-point type The text has been machine-translated via Google Translate. (fonction membre publique statique) [edit] |
[ statique Original: static The text has been machine-translated via Google Translate. |
retourne la plus petite valeur positive inférieure à la normale de la donnée à virgule flottante de type Original: returns the smallest positive subnormal value of the given floating-point type The text has been machine-translated via Google Translate. (fonction membre publique statique) [edit] |
Classes d'aide
indique modes d'arrondi en virgule flottante Original: indicates floating-point rounding modes The text has been machine-translated via Google Translate. (enum) [edit] | |
indique les modes de dénormalisation à virgule flottante Original: indicates floating-point denormalization modes The text has been machine-translated via Google Translate. (enum) [edit] | |
Relations avec les constantes C macro bibliothèque
| Specialization | Members | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
min()
|
lowest()(C++11) |
max()
|
epsilon()
|
digits
|
digits10
|
min_exponent
|
min_exponent10
|
max_exponent
|
max_exponent10
|
radix
| |
numeric_limits< bool >
|
2
| ||||||||||
numeric_limits< char >
|
CHAR_MIN | CHAR_MIN | CHAR_MAX | 2
| |||||||
numeric_limits< signed char >
|
SCHAR_MIN | SCHAR_MIN | SCHAR_MAX | 2
| |||||||
numeric_limits< unsigned char >
|
0
|
0
|
UCHAR_MAX | 2
| |||||||
numeric_limits< wchar_t >
|
WCHAR_MIN | WCHAR_MIN | WCHAR_MAX | 2
| |||||||
numeric_limits< char16_t >
|
0
|
0
|
UINT_LEAST16_MAX | 2
| |||||||
numeric_limits< char32_t >
|
0
|
0
|
UINT_LEAST32_MAX | 2
| |||||||
numeric_limits< short >
|
SHRT_MIN | SHRT_MIN | SHRT_MAX | 2
| |||||||
numeric_limits< signed short >
|
|||||||||||
numeric_limits< unsigned short >
|
0
|
0
|
USHRT_MAX | 2
| |||||||
numeric_limits< int >
|
INT_MIN | INT_MIN | INT_MAX | 2
| |||||||
numeric_limits< signed int >
|
|||||||||||
numeric_limits< unsigned int >
|
0
|
0
|
UINT_MAX | 2
| |||||||
numeric_limits< long >
|
LONG_MIN | LONG_MIN | LONG_MAX | 2
| |||||||
numeric_limits< signed long >
|
|||||||||||
numeric_limits< unsigned long >
|
0
|
0
|
ULONG_MAX | 2
| |||||||
numeric_limits< long long >
|
LLONG_MIN | LLONG_MIN | LLONG_MAX | 2
| |||||||
numeric_limits< signed long long >
|
|||||||||||
numeric_limits< unsigned long long >
|
0
|
0
|
ULLONG_MAX | 2
| |||||||
numeric_limits< float >
|
FLT_MIN | -FLT_MAX
|
FLT_MAX | FLT_EPSILON | FLT_MANT_DIG | FLT_DIG | FLT_MIN_EXP | FLT_MIN_10_EXP | FLT_MAX_EXP | FLT_MAX_10_EXP | FLT_RADIX |
numeric_limits< double >
|
DBL_MIN | -DBL_MAX
|
DBL_MAX | DBL_EPSILON | DBL_MANT_DIG | DBL_DIG | DBL_MIN_EXP | DBL_MIN_10_EXP | DBL_MAX_EXP | DBL_MAX_10_EXP | FLT_RADIX |
numeric_limits< long double >
|
LDBL_MIN | -LDBL_MAX
|
LDBL_MAX | LDBL_EPSILON | LDBL_MANT_DIG | LDBL_DIG | LDBL_MIN_EXP | LDBL_MIN_10_EXP | LDBL_MAX_EXP | LDBL_MAX_10_EXP | FLT_RADIX |
Exemple
#include <limits> #include <iostream> int main() { std::cout << "type\tlowest\thighest\n"; std::cout << "int\t" << std::numeric_limits<int>::lowest() << '\t' << std::numeric_limits<int>::max() << '\n'; std::cout << "float\t" << std::numeric_limits<float>::lowest() << '\t' << std::numeric_limits<float>::max() << '\n'; std::cout << "double\t" << std::numeric_limits<double>::lowest() << '\t' << std::numeric_limits<double>::max() << '\n'; }
Résultat possible :
type lowest highest int -2147483648 2147483647 float -3.40282e+38 3.40282e+38 double -1.79769e+308 1.79769e+308