std::numeric_limits::quiet_NaN
Aus cppreference.com
< cpp | types | numeric limits
![]() |
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. |
static T quiet_NaN() |
(bis C + +11) | |
static constexpr T quiet_NaN() |
(seit C++11) | |
Gibt den besonderen Wert "quiet not-a-number", wie von der Fließkomma-Typ
T
vertreten. Nur sinnvoll, wenn std::numeric_limits<T>::has_quiet_NaN == true. In IEEE 754, die häufigste Binärdarstellung Gleitkommazahlen, repräsentiert jeder Wert mit allen Bits des Exponenten eingestellten und mindestens ein Bit des Satzes einen Bruchteil NaN. Es wird durch die Implementierung definiert, welche Werte der Fraktion ruhig oder singaling NaNs darstellen, und ob das Vorzeichenbit ist sinnvoll .Original:
Returns the special value "quiet not-a-number", as represented by the floating-point type
T
. Only meaningful if std::numeric_limits<T>::has_quiet_NaN == true. In IEEE 754, the most common binary representation of floating-point numbers, any value with all bits of the exponent set and at least one bit of the fraction set represents a NaN. It is implementation-defined which values of the fraction represent quiet or singaling NaNs, and whether the sign bit is meaningful.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.
Inhaltsverzeichnis |
[Bearbeiten] Rückgabewert
T
|
std::numeric_limits<T>::quiet_NaN() |
/* non-specialized */ | T();
|
bool | false |
char | 0 |
signed char | 0 |
unsigned char | 0 |
wchar_t | 0 |
char16_t | 0 |
char32_t | 0 |
short | 0 |
unsigned short | 0 |
int | 0 |
unsigned int | 0 |
long | 0 |
unsigned long | 0 |
long long | 0 |
unsigned long long | 0 |
float | NAN oder eine andere Implementierung definiert NaN
Original: NAN or another implementation-defined NaN The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
double | Implementierung definiert
Original: implementation-defined The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
long double | Implementierung definiert
Original: implementation-defined The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[Bearbeiten] Ausnahmen
[Bearbeiten] Notes
Ein NaN nie vergleicht sich selbst gleich. Kopieren einer NaN kann nicht bewahren ihre Bit-Darstellung .
Original:
A NaN never compares equal to itself. Copying a NaN may not preserve its bit representation.
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.
[Bearbeiten] Beispiel
Mehrere Möglichkeiten, um ein NaN (die Ausgabe-String ist Compiler-spezifisch) zu generieren
Original:
Several ways to generate a NaN (the output string is compiler-specific)
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.
#include <iostream> #include <limits> #include <cmath> int main() { std::cout << std::numeric_limits<double>::quiet_NaN() << ' ' << std::numeric_limits<double>::signaling_NaN() << ' ' << std::acos(2) << ' ' << std::tgamma(-1) << ' ' << std::log(-1) << ' ' << std::sqrt(-1) << ' ' << 0 / 0.0 << '\n'; std::cout << "NaN == NaN? " << std::boolalpha << ( std::numeric_limits<double>::quiet_NaN() == std::numeric_limits<double>::quiet_NaN() ) << '\n'; }
Output:
nan nan nan nan nan -nan -nan NaN == NaN? false
[Bearbeiten] Siehe auch
[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] |
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) |