Scroll to navigation

LDEXP(3) Manual do Programador do Linux LDEXP(3)

NOME

ldexp, ldexpf, ldexpl - multiplica número de ponto flutuante por potência inteira de 2

SINOPSE

#include <math.h>
double ldexp(double x, int exp);
float ldexpf(float x, int exp);
long double ldexpl(long double x, int exp);

Vincule com -lm.

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

ldexpf(), ldexpl():

_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
|| /* Desde o glibc 2.19: */ _DEFAULT_SOURCE
|| /* Glibc versões <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

DESCRIÇÃO

As funções retornam o resultado da multiplicação de um número de ponto flutuante x por 2 elevado à potência exp.

VALOR DE RETORNO

Em caso de sucesso, estas funções retornam x * (2^exp).

Se exp é zero, x é retornado.

Se x é um NaN, um NaN é retornado.

Se x é um infinito positivo (infinito negativo), infinito positivo (infinito negativo) é retornado.

Se o resultado for insuficiente, ocorrerá um erro de intervalo e zero será retornado.

Se o resultado estourar, ocorrerá um erro de intervalo e as funções retornam HUGE_VAL, HUGE_VALF ou HUGE_VALL, respectivamente.

ERROS

Consulte math_error(7) para obter informações sobre como determinar se ocorreu um erro ao chamar essas funções.

Os seguintes erros podem ocorrer:

errno é definido com ERANGE. Uma exceção de ponto flutuante de estouro (FE_OVERFLOW) é levantada.
errno é definido com ERANGE. Uma exceção de ponto flutuante de estouro negativo (FE_UNDERFLOW) é levantada.

ATRIBUTOS

Para uma explicação dos termos usados nesta seção, consulte attributes(7).

Interface Atributo Valor
ldexp(), ldexpf(), ldexpl() 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.

VEJA TAMBÉM

frexp(3), modf(3), scalbln(3)

COLOFÃO

Esta página faz parte da versão 5.10 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 Valter Ferraz Sanches <vfs@ezlinux.cjb.net>, 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 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.

15 setembro 2017