FLT_EVAL_METHOD
| Défini dans l'en-tête <cfloat>
|
||
#define FLT_EVAL_METHOD /* implementation-defined */
|
(depuis C++11) | |
Spécifie la précision avec laquelle toutes les opérations arithmétiques à virgule flottante autres que l'affectation et le transtypage sont effectuées.
| Valeur | Explication |
valeurs négatives sauf -1
|
comportement défini par l'implémentation |
-1
|
la précision par défaut n'est pas connue |
0
|
toutes les opérations et constantes sont évaluées dans l'étendue et la précision du type utilisé. De plus, float_t et double_t sont respectivement équivalents à float et double
|
1
|
toutes les opérations et constantes sont évaluées dans l'étendue et la précision de double. De plus, float_t et double_t sont tous deux équivalents à double
|
2
|
toutes les opérations et constantes sont évaluées dans l'étendue et la précision de long double. De plus, float_t et double_t sont tous deux équivalents à long double
|
Notes
Quelle que soit la valeur de FLT_EVAL_METHOD , toute expression à virgule flottante peut être contractée , c'est-à-dire calculée comme si tous les résultats intermédiaires avaient une portée et une précision infinies (sauf si #pragma STDC FP_CONTRACT est désactivé).
Le transtypage et l'affectation suppriment toute plage et précision superflues : cela modélise l'action de stocker une valeur d'un registre FPU en précision étendue dans un emplacement mémoire de taille standard.
Voir aussi
|
Documentation C
pour
FLT_EVAL_METHOD
|