std::numeric_limits – cppreference.com
Aus cppreference.com
<metanoindex/>
<tbody> </tbody>
| definiert in Header <limits> |
||
|
|
||
Die numeric_limits Klassen-Template bietet eine standardisierte Möglichkeit, um verschiedene Eigenschaften von grundlegender Typen (zB den größtmöglichen Wert für Typ int ist std::numeric_limits<int>::max()) abzufragen .
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.
Diese Information wird über Spezialisierungen der numeric_limits Schablone. Die Standard-Bibliothek zur Verfügung stellt Spezialisierungen für alle Grundtypen:
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>
| definiert in Header <limits> |
||
|
|
||
Darüber hinaus besteht eine Spezialisierung für jeden cv qualifizierte Version jeder Grundtypus, identisch mit dem uneingeschränkten Spezialisierung, z. B. std::numeric_limits<const int>, std::numeric_limits<volatile int> und std::numeric_limits<const volatile int> vorgesehen und entsprechen 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.
Die Standard-Bibliothek-Typen, die Aliase grundlegende Typen (wie std::size_t oder std::streamsize kann auch mit den std::numeric_limits Typmerkmale untersucht werden .
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.
Implementierungen können Spezialisierungen std::numeric_limits für die Implementierung spezifischer Typen anbieten sind:.. ZB GCC bietet std::numeric_limits<__int128> Bibliotheken können hinzuzufügen Spezialisierungen für die Bibliothek bereitgestellten Typen, wandelt zB OpenEXR provides std::numeric_limits<half> für eine 16-Bit-Fließkomma-Typ .
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.
Mitglied Konstanten
[statisch] |
identifiziert, für die std::numeric_limits spezialisiert ist Original: identifies types for which std::numeric_limits is specialized The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert unterzeichnet Typen Original: identifies signed types The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert Integer-Typen Original: identifies integer types The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert genauen Typen Original: identifies exact types The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert Floating-Point-Typen, die den besonderen Wert "positive Unendlichkeit" darstellen kann Original: identifies floating-point types that can represent the special value "positive infinity" The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert Floating-Point-Typen, die den besonderen Wert "quiet not-a-number" (NaN) darstellen kann 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. (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert Floating-Point-Typen, die den besonderen Wert "Signalisierung not-a-number" (NaN) darstellen kann 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. (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert die Denormalisierung Stil durch den Floating-Point-Typ verwendet Original: identifies the denormalization style used by the floating-point type The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
identifies the floating-point types that detect loss of precision as denormalization loss rather than inexact result (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert die Rundung Stil vom Typ verwendet Original: identifies the rounding style used by the type The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert die IEC 559/IEEE 754 Floating-Point-Typen Original: identifies the IEC 559/IEEE 754 floating-point types The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
identifies types that represent a finite set of values (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert Typen, die Überläufe Griff mit Modulo-Arithmetik Original: identifies types that handle overflows with modulo arithmetic The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
Anzahl von Ziffern, die Original: number of The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
Anzahl der Dezimalstellen, die ohne Änderung dargestellt werden können Original: number of decimal digits that can be represented without change The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] (C++11) |
Anzahl der Dezimalstellen nötig, um alle Werte dieses Typs zu unterscheiden Original: number of decimal digits necessary to differentiate all values of this type The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
die Radix oder Integer Basis durch die Darstellung des angegebenen Typs verwendet Original: the radix or integer base used by the representation of the given type The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
eine mehr als die kleinste negative Macht des Radix, die eine gültige normalisierten Gleitkomma-Wert ist 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. (public static Mitglied konstanten) [edit] |
[statisch] |
das kleinste negative Zehnerpotenz, die eine gültige normalisierten Gleitkomma-Wert ist Original: the smallest negative power of ten that is a valid normalized floating-point value The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
eine mehr als die größte ganze Macht der radix, die eine gültige endlichen Floating-Point-Wert ist 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. (public static Mitglied konstanten) [edit] |
[statisch] |
die größte ganzzahlige Potenz von 10, die eine gültige endlichen Floating-Point-Wert ist Original: the largest integer power of 10 that is a valid finite floating-point value The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
Typen identifiziert, die dazu führen, um arithmetische Operationen einfangen kann Original: identifies types which can cause arithmetic operations to trap The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
[statisch] |
identifiziert Floating-Point-Typen, die tinyness erkennen, bevor Rundungen Original: identifies floating-point types that detect tinyness before rounding The text has been machine-translated via Google Translate. (public static Mitglied konstanten) [edit] |
Member-Funktionen
[statisch] |
gibt den kleinsten endlichen Wert des angegebenen Typs Original: returns the smallest finite value of the given type The text has been machine-translated via Google Translate. (public static Elementfunktion) [edit] |
[statisch] (C++11) |
Gibt den niedrigsten endlichen Wert des angegebenen Typs Original: returns the lowest finite value of the given type The text has been machine-translated via Google Translate. (public static Elementfunktion) [edit] |
[statisch] |
liefert den größten endlichen Wert des angegebenen Typs Original: returns the largest finite value of the given type The text has been machine-translated via Google Translate. (public static Elementfunktion) [edit] |
[statisch] |
gibt die Differenz zwischen dem nächsten und Original: returns the difference between The text has been machine-translated via Google Translate. (public static Elementfunktion) [edit] |
[statisch] |
gibt die maximale Rundungsfehler der gegebenen Fließkomma-Typ Original: returns the maximum rounding error of the given floating-point type The text has been machine-translated via Google Translate. (public static Elementfunktion) [edit] |
[statisch] |
gibt die positive infinity Wert der gegebenen Fließkomma-Typ Original: returns the positive infinity value of the given floating-point type The text has been machine-translated via Google Translate. (public static Elementfunktion) [edit] |
[statisch] |
gibt einen ruhigen NaN Wert der gegebenen Fließkomma-Typ Original: returns a quiet NaN value of the given floating-point type The text has been machine-translated via Google Translate. (public static Elementfunktion) [edit] |
[statisch] |
gibt ein Signal NaN Wert der gegebenen Fließkomma-Typ Original: returns a signaling NaN value of the given floating-point type The text has been machine-translated via Google Translate. (public static Elementfunktion) [edit] |
[statisch] |
gibt die kleinste positive subnormal Wert der gegebenen Fließkomma-Typ Original: returns the smallest positive subnormal value of the given floating-point type The text has been machine-translated via Google Translate. (public static Elementfunktion) [edit] |
Helper-Klassen
zeigt Gleitkommazahl Rundungsmodi Original: indicates floating-point rounding modes The text has been machine-translated via Google Translate. (enum) [edit] | |
zeigt Floating-Point-Denormalisierung Modi Original: indicates floating-point denormalization modes The text has been machine-translated via Google Translate. (enum) [edit] | |
Beziehung mit C-Bibliothek Makro-Konstanten
| 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 |
Beispiel
#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'; }
Possible output:
type lowest highest int -2147483648 2147483647 float -3.40282e+38 3.40282e+38 double -1.79769e+308 1.79769e+308