std::fegetround, std::fesetround
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. |
<metanoindex/>
<tbody> </tbody>| Definido no cabeçalho <cfenv>
|
||
int fesetround( int round ) |
(1) | (desde C++11) |
int fegetround() |
(2) | (desde C++11) |
1)
Tentativas para estabelecer o sentido de arredondamento de ponto flutuante igual à
round argumento, que se espera que seja um dos flutuando macros arredondamento de pontos. Original:
Attempts to establish the floating-point rounding direction equal to the argument
round, which is expected to be one of the flutuando macros arredondamento de pontos. 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.
2)
Retorna o valor da flutuando macro arredondamento ponto que corresponde à direcção de arredondamento correntes.
Original:
Returns the value of the flutuando macro arredondamento ponto that corresponds to the current rounding direction.
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.
Parâmetros
| round | - | direção de arredondamento, um dos flutuando macros arredondamento de pontos
Original: rounding direction, one of flutuando macros arredondamento de pontos The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Valor de retorno
1)
0 em caso de sucesso, não-zero, caso contrário.Original:
0 on success, non-zero otherwise.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.
2)
o flutuando macro arredondamento ponto descrevendo a direcção arredondamento corrente ou um valor negativo se a direcção não pode ser determinada
Original:
the flutuando macro arredondamento ponto describing the current rounding direction or a negative value if the direction cannot be determined
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.
Exemplo
#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';
}
Saída:
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
Veja também
(C++11) |
número inteiro mais próximo utilizando o modo de arredondamento correntes Original: nearest integer using current rounding mode The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (função) |
(C++11) (C++11) (C++11) |
número inteiro mais próximo usando o modo de arredondamento atual com exceção se o resultado é diferente Original: nearest integer using current rounding mode with exception if the result differs The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (função) |