std::numeric_limits
Aus cppreference.com
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
<metanoindex/>
<tbody> </tbody>| definiert in Header <limits>
|
||
template< class T > class numeric_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.
You can help to correct and verify the translation. Click here for instructions.
Diese Information wird über Spezialisierungen der
<tbody>
</tbody>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.
You can help to correct and verify the translation. Click here for instructions.
| definiert in Header <limits>
|
||
template<> class numeric_limits<bool>; template<> class numeric_limits<char>; template<> class numeric_limits<signed char>; template<> class numeric_limits<unsigned char>; template<> class numeric_limits<wchar_t>; template<> class numeric_limits<char16_t>; // C++11 feature template<> class numeric_limits<char32_t>; // C++11 feature template<> class numeric_limits<short>; template<> class numeric_limits<unsigned short>; template<> class numeric_limits<int>; template<> class numeric_limits<unsigned int>; template<> class numeric_limits<long>; template<> class numeric_limits<unsigned long>; template<> class numeric_limits<long long>; template<> class numeric_limits<unsigned long long>; template<> class numeric_limits<float>; template<> class numeric_limits<double>; template<> class numeric_limits<long double>; |
||
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.
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.
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.
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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[statisch] |
identifiziert unterzeichnet Typen Original: identifies signed types The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[statisch] |
identifiziert Integer-Typen Original: identifies integer types The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[statisch] |
identifiziert genauen Typen Original: identifies exact types The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[statisch] |
identifies the floating-point types that detect loss of precision as denormalization loss rather than inexact result (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[statisch] |
identifies types that represent a finite set of values (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[statisch] |
Anzahl von Ziffern, die radix unverändert dargestellt werden kann Original: number of radix digits that can be represented without change The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Mitglied konstanten) |
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. You can help to correct and verify the translation. Click here for instructions. (public static Elementfunktion) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Elementfunktion) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Elementfunktion) |
[statisch] |
gibt die Differenz zwischen dem nächsten und 1.0 darstellbare Wert der gegebenen GleitkommatypOriginal: returns the difference between 1.0 and the next representable value of the given floating-point typeThe text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (public static Elementfunktion) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Elementfunktion) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Elementfunktion) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Elementfunktion) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Elementfunktion) |
[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. You can help to correct and verify the translation. Click here for instructions. (public static Elementfunktion) |
Helper-Klassen
zeigt Gleitkommazahl Rundungsmodi Original: indicates floating-point rounding modes The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (enum) | |
zeigt Floating-Point-Denormalisierung Modi Original: indicates floating-point denormalization modes The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (enum) | |
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