Floating-point environment
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. |
Die Floating-Point-Umfeld ist die Menge der Floating-Point-Status-Flags und Regelungsarten durch die Umsetzung unterstützt. Es ist Thread-lokalen, erbt jeder Thread den Anfangszustand seinen Gleitkomma-Umgebung, von der übergeordneten Thread. Floating-Point-Operationen ändern die Floating-Point-Status-Flags auf ungewöhnliche Ergebnisse oder zusätzliche Informationen anzeigen. Der Zustand des Floating-Point-Betriebsarten wirkt sich auf die Ergebnisse von einigen Fließkomma-Operationen .
Original:
The floating-point environment is the set of floating-point status flags and control modes supported by the implementation. It is thread-local, each thread inherits the initial state of its floating-point environment from the parent thread. Floating-point operations modify the floating-point status flags to indicate abnormal results or auxiliary information. The state of floating-point control modes affects the outcomes of some floating-point operations.
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 Floating-Point-Umgebung Zugang und Änderung ist nur dann sinnvoll, wenn
#pragma STDC FENV_ACCESS um
ON
eingestellt ist. Andernfalls wird die Umsetzung ist kostenlos anzunehmen, dass Floating-Point-Betriebsarten immer die standardmässigen und dass Fließkomma-Status-Flags sind nie geprüft oder geändert. In der Praxis unterstützen einige aktuelle Compiler die #pragma
explizit, aber die meisten Compiler ermöglichen sinnvollen Zugang zu der Floating-Point-Umgebung sowieso .Original:
The floating-point environment access and modification is only meaningful when
#pragma STDC FENV_ACCESS is set to
ON
. Otherwise the implementation is free to assume that floating-point control modes are always the default ones and that floating-point status flags are never tested or modified. In practice, few current compilers support the #pragma
explicitly, but most compilers allow meaningful access to the floating-point environment anyway.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] Types
definiert in Header
<cfenv> | |
fenv_t | Der Typ, der das gesamte Floating-Point-Umgebung
Original: The type representing the entire floating-point environment The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
fexcept_t | Der Typ, der alle Floating-Point-Status-Flags kollektiv
Original: The type representing all floating-point status flags collectively The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[Bearbeiten] Funktionen
(C++11) |
löscht die angegebene Fließkomma-Status-Flags Original: clears the specified floating-point status flags The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) |
bestimmt, welche der angegebenen Gleitkommazahl Status-Flags gesetzt sind Original: determines which of the specified floating-point status flags are set The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) |
wirft die angegebenen Gleitkomma-Ausnahmen Original: raises the specified floating-point exceptions The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) (C++11) |
kopiert den Zustand der angegebenen Gleitkomma-Statusflags von oder zu der Fließkomma-Umgebung Original: copies the state of the specified floating-point status flags from or to the floating-point environment The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) (C++11) |
ab oder legt Rundung Richtung Original: gets or sets rounding direction The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) |
speichert oder stellt die aktuelle Floating-Point-Umgebung Original: saves or restores the current floating point environment The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) |
schont die Umwelt, löscht alle Status-Flags und ignoriert alle zukünftigen Fehler Original: saves the environment, clears all status flags and ignores all future errors The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) |
stellt die Floating-Point-Umgebung und stellt die zuvor Ausnahmen auslösen Original: restores the floating-point environment and raises the previously raise exceptions The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
[Bearbeiten] Makros
Floating-Point-Ausnahmen Original: floating-point exceptions The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Makro konstant) | |
Floating-Point-Rundung Richtung Original: floating-point rounding direction The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Makro konstant) | |
(C++11) |
Standardmäßig Floating-Point-Umgebung Original: default floating-point environment The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Makro konstant) |
[Bearbeiten] Notes
Die Gleitkomma-Exceptions sind nicht auf die C + +-Ausnahmen verwandt. Wenn ein Gleitkommaoperation wirft eine Gleitkomma-Ausnahme, den Status der Floating-Point-Umgebung ändert, die mit std::fetestexcept getestet werden können, aber die Ausführung eines C + +-Programm auf den meisten Implementierungen ungebrochen .
Original:
The floating-point exceptions are not related to the C++ exceptions. When a floating-point operation raises a floating-point exception, the status of the floating-point environment changes, which can be tested with std::fetestexcept, but the execution of a C++ program on most implementations continues uninterrupted.
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.
Es gibt Compiler-Erweiterungen, die verwendet werden, um C + +-Ausnahmen automatisch generiert, wenn eine Floating-Point-Exception ausgelöst werden können:
Original:
There are compiler extensions that may be used to generate C++ exceptions automatically whenever a floating-point exception is raised:
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.
- GNU libc-Funktion
feenableexcept()
ermöglicht Abfangen der Floating-Point-Ausnahmen, die das SignalSIGFPE
erzeugt. Wenn der Compiler-Option-fnon-call-exceptions
verwendet wurde, kann die für dieses Signal werfen einen benutzerdefinierten C + +-Ausnahme .Original:GNU libc functionfeenableexcept()
enables trapping of the floating-point exceptions, which generates the signalSIGFPE
. If the compiler option-fnon-call-exceptions
was used, the handler for that signal may throw a user-defined C++ exception.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions. - Microsoft WinAPI Funktion
_control87()
ermöglicht Abfangen der Floating-Point-Ausnahmen, die eine Hardware-Ausnahme, die C + +-Ausnahmen mit_set_se_translator
umgewandelt werden kann generiert .Original:Microsoft WinAPI function_control87()
enables trapping of the floating-point exceptions, which generates a hardware exception, which can be converted to C++ exceptions with_set_se_translator
.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.