exp
, , expf
, expl
Calcula el valor exponencial.
Sintaxis
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 higher
Parámetros
x
Valor de punto flotante por el que exponenciar la base logarítmica natural e.
Valor devuelto
La función exp
devuelve el valor exponencial del parámetro de punto flotante, x
, si se realiza correctamente. Es decir, el resultado es ex
, donde e es la base del logaritmo natural. En caso de desbordamiento, la función devuelve INF
(infinito); en caso de subdesbordamiento, exp
devuelve 0.
Entrada | Excepción SEH | Excepción de _matherr |
---|---|---|
± NaN reservado, indeterminado | None | _DOMAIN |
± Infinito | INVALID |
_DOMAIN |
x ≥ 7.097827e+002 |
INEXACT +OVERFLOW |
OVERFLOW |
x ≤ -7.083964e+002 |
INEXACT +UNDERFLOW |
UNDERFLOW |
La función exp
tiene una implementación que usa las Extensiones SIMD de streaming 2 (SSE2). Consulte _set_SSE2_enable
para obtener información y conocer las restricciones sobre el uso de la implementación de SSE2.
Comentarios
C++ permite la sobrecarga, por lo que puede llamar a las sobrecargas de exp
que toman un argumento float
o long double
. En un programa de C, a menos que use la macro <tgmath.h>
para llamar a esta función, exp
siempre toma y devuelve double
.
Si usa la exp
macro de <tgmath.h>
, el tipo del argumento determina qué versión de la función está seleccionada. Consulte Matemáticas de tipo genérico para obtener más información.
De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.
Requisitos
Función | Encabezado C necesario | Encabezado C++ necesario |
---|---|---|
exp , , expf , expl |
<math.h> |
<cmath> o <math.h> |
exp Macro |
<tgmath.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Ejemplo
// 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
Vea también
Compatibilidad con cálculos matemáticos y el punto flotante
log
, logf
, , log10
, log10f
_CIexp