CEIL(3)

NOME
ceil, ceilf, ceill - funções de 'teto': menor valor inteiro maior ou igual que x

SINOPSE
#include <math.h>

double ceil(double x);
float ceilf(float x);
long double ceill(long double x);

Vincule com -lm.

    Requisitos de macro de teste de recursos para o glibc (consulte feature_test_macros(7)):

ceilf(), ceill():
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
        || /* Desde o glibc 2.19: */ _DEFAULT_SOURCE
        || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

DESCRIÇÃO
Estas funções retornam o menor valor integral que não é menor que x.

Por exemplo, ceil(0.5) é 1.0 e ceil(-0.5) é 0.0.

VALOR DE RETORNO
Estas funções retornam o teto de x.

Se x é integral, +0, -0, NaN ou infinito, o próprio x é retornado.

ERROS
Ocorre nenhum erro. POSIX.1-2001 documenta um erro de intervalo para estouros, mas consulte NOTAS.

ATRIBUTOS
Para uma explicação dos termos usados nesta seção, consulte attributes(7).
Interface | Atributo | Valor
ceil(), ceilf(), ceill() | Thread safety | MT-Safe

DE ACORDO COM
C99, POSIX.1-2001, POSIX.1-2008.

A variante retornando double também está de acordo com SVr4, 4.3BSD, C89.

NOTAS
SUSv2 e POSIX.1-2001 contêm um texto sobre 'overflow' (que pode definir errno para ERANGE ou levanta uma exceção FE_OVERFLOW). Na prática, o resultado não pode 'overflow' em qualquer máquina, assim esta coisa de manipulação de erros não tem sentido. (Mais precisamente, 'overflow' somente ocorre quando o valor máximo de um expoente é menor que o número de bits da mantissa. Para, o padronização IEEE-754, os números em ponto flutuante de 32 bits e 64 bits o valor máximo do expoente é 128 (respectivamente, 1024) e o de bits da mantissa é 24 (respectivamente, 53)).

O valor integral retornado por essas funções pode ser muito grande para armazenar em um tipo inteiro (int, long etc.). Para evitar um estouro, que produzirá resultados indefinidos, um aplicativo deve executar uma verificação de intervalo no valor retornado antes de atribuí-lo a um tipo inteiro.

VEJA TAMBÉM
floor(3), lrint(3), nearbyint(3), rint(3), round(3), trunc(3)

COLOFÃO
Esta página faz parte da versão 5.13 do projeto Linux man-pages. Uma descrição do projeto, informações sobre relatórios de bugs e a versão mais recente desta página podem ser encontradas em https://www.kernel.org/doc/man-pages/.

TRADUÇÃO
A tradução para português brasileiro desta página man foi criada por Paulo César Mendes <drpc@ism.com.br>, André Luiz Fassone <lonely_wolf@ig.com.br> e Rafael Fontenelle <rafaelff@gnome.org>.

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 (https://www.gnu.org/licenses/gpl-3.0.html) ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores (debian-l10n-portuguese@lists.debian.org).