|
#define FLT_EVAL_METHOD /* implementation-defined */
|
|
(desde C++11)
|
|
|
|
|
Especifica la precisión en la que se realizan todas las operaciones aritméticas de punto flotante, excepto las de asignación y conversión.
|
Valor
|
Explicación
|
|
valores negativos excepto
-
1
|
comportamiento definido por la implementación
|
|
-
1
|
la precisión predeterminada no es conocida
|
|
0
|
todas las operaciones y constantes se evalúan en el rango y precisión del tipo utilizado. Adicionalmente,
float_t
y
double_t
son equivalentes a
float
y
double
respectivamente
|
|
1
|
todas las operaciones y constantes se evalúan en el rango y precisión de
double
. Adicionalmente, tanto
float_t
como
double_t
son equivalentes a
double
|
|
2
|
todas las operaciones y constantes se evalúan en el rango y precisión de
long
double
. Adicionalmente, tanto
float_t
como
double_t
son equivalentes a
long
double
|
Notas
Independientemente del valor de
FLT_EVAL_METHOD
, cualquier expresión de punto flotante puede ser
contraída
, es decir, calculada como si todos los resultados intermedios tuvieran rango y precisión infinitos (a menos que
#pragma
STDC FP_CONTRACT
esté desactivado).
La conversión y asignación eliminan cualquier rango y precisión extraños: esto modela la acción de almacenar un valor desde un registro de FPU de precisión extendida en una ubicación de memoria de tamaño estándar.
Véase también