Namespaces
Variants

FLT_EVAL_METHOD

From cppreference.net
< c ‎ | types ‎ | limits
Definiert im Header <float.h>
#define FLT_EVAL_METHOD /* implementation-defined */
(seit C99)

Gibt den Bereich und die Genauigkeit von Gleitkommawerten an, die aus Gleitkommakonstanten und allen Operationen (Operatoren, implizite Konvertierungen von Operanden) außer Zuweisung, Cast und Bibliotheksfunktionsaufruf erhalten werden.

Wert Erklärung
negative Werte außer - 1 implementierungsdefiniertes Verhalten
- 1 die Standardgenauigkeit ist nicht bekannt
0 alle Operationen und Konstanten werden im Wertebereich und der Genauigkeit des verwendeten Typs ausgewertet. Zusätzlich sind float_t und double_t äquivalent zu float bzw. double
1 alle Operationen und Konstanten werden im Wertebereich und der Genauigkeit von double ausgewertet. Zusätzlich sind sowohl float_t als auch double_t äquivalent zu double
2 alle Operationen und Konstanten werden im Wertebereich und der Genauigkeit von long double ausgewertet. Zusätzlich sind sowohl float_t als auch double_t äquivalent zu long double

Hinweise

Unabhängig vom Wert von FLT_EVAL_METHOD , kann jeder Gleitkomma-Ausdruck kontrahiert werden, das heißt, als ob alle Zwischenergebnisse unendlichen Wertebereich und unendliche Genauigkeit hätten (sofern nicht #pragma STDC FP_CONTRACT deaktiviert ist).

Cast und Zuweisung entfernen jeglichen überflüssigen Bereich und jegliche überflüssige Präzision: dies modelliert die Aktion des Speicherns eines Werts aus einem Extended-Precision-FPU-Register an einen speicherstandardgroßen Speicherort.

Siehe auch

(C99)
effizientester Gleitkommatyp mindestens so breit wie float
(typedef)
effizientester Gleitkommatyp mindestens so breit wie double
(typedef)
C++-Dokumentation für FLT_EVAL_METHOD