nearbyint, nearbyintf, nearbyintl

Arredonda o valor especificado de ponto flutuante para um inteiro e retorna esse valor em um formato de ponto flutuante.

Sintaxe

double nearbyint( double x );
float nearbyintf( float x );
long double nearbyintl( long double x );
#define nearbyint( X ) // Requires C11 or higher

float nearbyint( float x ); //C++ only
long double nearbyint( long double x ); //C++ only

Parâmetros

x
O valor a ser arredondado.

Retornar valor

Se for bem-sucedido, retorna x, arredondado para o número inteiro mais próximo, usando o formato de arredondamento atual, conforme relatado por fegetround. Caso contrário, a função pode retornar um dos seguintes valores:

Problema Retorno
x = ±INFINITY ±INFINITY, sem modificações
x = ±0 ±0, sem modificações
x = NaN NaN

Os erros não são relatados por meio de _matherr, especificamente, essa função não relata exceções FE_INEXACT .

Comentários

A principal diferença entre essa função e rint é que essa função não gera a exceção de ponto flutuante inexato.

Como os valores máximos de ponto flutuante são inteiros exatos, essa função nunca estourará sozinha. Em vez disso, a saída pode estourar o valor retornado, dependendo da versão da função que você usar.

O C++ permite sobrecargas, de modo que é possível chamar sobrecargas de nearbyint que usam e retornam os parâmetros float ou long double. Em um programa C, a menos que você esteja usando a <macro tgmath.h> para chamar essa função, nearbyint sempre usa dois valores duplos e retorna um valor duplo.

Se você usa a macro <tgmath.h>nearbyint(), o tipo do argumento determina qual versão da função será selecionada. Confira Matemática do tipo genérico para obter detalhes.

Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, consulte Estado global na CRT.

Requisitos

Função Cabeçalho C Cabeçalho C++
nearbyint, nearbyintf, nearbyintl <matemática.h> <cmath> ou <math.h>
Macro nearbyint <tgmath.h>

Para obter informações sobre compatibilidade, consulte Compatibilidade.

Confira também

Referência de função alfabética
Suporte a matemática e ponto flutuante