Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Calcula o exponencial.
Sintaxe
double exp(
double x
);
float exp(
float x
); // C++ only
long double exp(
long double x
); // C++ only
float expf(
float x
);
long double expl(
long double x
);
#define exp(z) // Requires C11 or later
Parâmetros
x
O valor de ponto flutuante pelo qual elevar a base de logaritmo natural e.
Valor retornado
A função exp retorna o valor exponencial do parâmetro de ponto flutuante, x, se for bem-sucedida. Ou seja, o resultado é ex, em que e é a base do logaritmo natural. Se houver estouro, a função retornará INF (infinito) e, no estouro negativo, exp retornará 0.
| Entrada | Exceção SEH | Exceção _matherr |
|---|---|---|
| ± NaN Silencioso, indeterminado | Nenhum | _DOMAIN |
| ± Infinito | INVALID |
_DOMAIN |
x ≥ 7.097827e+002 |
INEXACT+OVERFLOW |
OVERFLOW |
x ≤ -7.083964e+002 |
INEXACT+UNDERFLOW |
UNDERFLOW |
A função exp tem uma implementação que usa SSE2 (Extensões SIMD de Streaming 2). Confira _set_SSE2_enable para obter informações e restrições sobre como usar a implementação de SSE2.
Comentários
O C++ permite sobrecargas, de modo que é possível chamar sobrecargas de exp que recebe um argumento float ou long double. Em um programa do C, a menos que você esteja usando a macro <tgmath.h> para chamar essa função, exp sempre recebe e retorna um double.
Se você usar a exp macro de <tgmath.h>, o tipo do argumento determinará 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, confira Estado global no CRT.
Requisitos
| Função | Cabeçalho C necessário | Cabeçalho C++ necessário |
|---|---|---|
exp, expf, expl |
<math.h> |
<cmath> ou <math.h> |
Macro exp |
<tgmath.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
// crt_exp.c
#include <math.h>
#include <stdio.h>
int main( void )
{
double x = 2.302585093, y;
y = exp( x );
printf( "exp( %f ) = %f\n", x, y );
}
exp( 2.302585 ) = 10.000000
Confira também
Suporte matemático e de ponto flutuante
log, logf, log10, log10f
_CIexp