FE_DOWNWARD, FE_TONEAREST, FE_TOWARDZERO, FE_UPWARD
De 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. |
| Defined in header <cfenv>
|
||
| #define FE_DOWNWARD /*implementation defined*/ |
(ya que C + +11) | |
| #define FE_TONEAREST /*implementation defined*/ |
(ya que C + +11) | |
| #define FE_TOWARDZERO /*implementation defined*/ |
(ya que C + +11) | |
| #define FE_UPWARD /*implementation defined*/ |
(ya que C + +11) | |
Cada una de estas constantes macro se expande a un número entero no negativo expresión constante, que puede utilizarse con me std::fesetround y std::fegetround para indicar uno de los modos de redondeo compatibles de punto flotante. La aplicación puede definir adicionales constantes modo de redondeo en
<cfenv>, que todo debe comenzar con FE_ seguido por al menos una letra mayúscula. Cada macro se define sólo si es respaldada .Original:
Each of these macro constants expands to a nonnegative integer constant expression, which can me used with std::fesetround and std::fegetround to indicate one of the supported floating-point rounding modes. The implementation may define additional rounding mode constants in
<cfenv>, which should all begin with FE_ followed by at least one uppercase letter. Each macro is only defined if it is supported.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.
En la mayoría de las implementaciones, estas constantes macro ampliar a los valores iguales a los valores de FLT_ROUNDS y std::float_round_style
Original:
On most implementations, these macro constants expand to the values equal to the values of FLT_ROUNDS and std::float_round_style
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.
| Constant
Original: Constant The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Explanation |
FE_DOWNWARD
|
redondeo hacia el infinito negativo
Original: rounding towards negative infinity The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
FE_TONEAREST
|
redondeo hacia entero más cercano
Original: rounding towards nearest integer The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
FE_TOWARDZERO
|
redondeo hacia cero
Original: rounding towards zero The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
FE_UPWARD
|
redondeo hacia el infinito positivo
Original: rounding towards positive infinity The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Modos adicionales de redondeo puede estar avalado por una implementación .
Original:
Additional rounding modes may be supported by an implementation.
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.
[editar] Ejemplo
#include <cmath> #include <cfenv> #include <iostream> int main() { #pragma STDC FENV_ACCESS ON std::fesetround(FE_DOWNWARD); std::cout << "rounding using FE_DOWNWARD: \n" << std::fixed << " 12.0 -> " << std::nearbyint(12.0) << '\n' << " 12.1 -> " << std::nearbyint(12.1) << '\n' << "-12.1 -> " << std::nearbyint(-12.1) << '\n' << " 12.5 -> " << std::nearbyint(12.5) << '\n' << " 12.9 -> " << std::nearbyint(12.9) << '\n' << "-12.9 -> " << std::nearbyint(-12.9) << '\n' << " 13.0 -> " << std::nearbyint(13.0) << '\n'; std::fesetround(FE_TONEAREST); std::cout << "rounding using FE_TONEAREST: \n" << " 12.0 -> " << std::nearbyint(12.0) << '\n' << " 12.1 -> " << std::nearbyint(12.1) << '\n' << "-12.1 -> " << std::nearbyint(-12.1) << '\n' << " 12.5 -> " << std::nearbyint(12.5) << '\n' << " 12.9 -> " << std::nearbyint(12.9) << '\n' << "-12.9 -> " << std::nearbyint(-12.9) << '\n' << " 13.0 -> " << std::nearbyint(13.0) << '\n'; }
Output:
rounding using FE_DOWNWARD: 12.0 -> 12.000000 12.1 -> 12.000000 -12.1 -> -13.000000 12.5 -> 12.000000 12.9 -> 12.000000 -12.9 -> -13.000000 13.0 -> 13.000000 rounding using FE_TONEAREST: 12.0 -> 12.000000 12.1 -> 12.000000 -12.1 -> -12.000000 12.5 -> 12.000000 12.9 -> 13.000000 -12.9 -> -13.000000 13.0 -> 13.000000
[editar] Ver también
| indica coma flotante modos de redondeo Original: indicates floating-point rounding modes The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (enum) | |
| (C++11) (C++11) |
obtiene o establece la dirección redondeo 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. (función) |