Share via


exp, expf, expl

計算指數。

語法

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

參數

x
要以 e 表示自然對數的 浮點值。

傳回值

如果成功, x 函式會 exp 傳回浮點參數的指數值。 也就是說,結果是 e,其中 e x 是自然對數的基底。 在溢位時,函式會傳 INF 回 (無限大),並在下溢時傳 exp 回 0。

輸入 SEH 例外狀況 _matherr 例外
±安靜 NaN, 不確定 _DOMAIN
±無限 INVALID _DOMAIN
x ≥ 7.097827e+002 INEXACT+OVERFLOW OVERFLOW
x ≤ -7.083964e+002 INEXACT+UNDERFLOW UNDERFLOW

exp 式具有使用串流 SIMD 延伸模組 2 (SSE2) 的實作。 如需使用 SSE2 實作的資訊和限制,請參閱 _set_SSE2_enable

備註

C++ 允許多載,因此您可以呼叫 採用 floatlong double 引數的 exp 多載。 在 C 程式中,除非您使用 <tgmath.h> 宏來呼叫此函式, exp 否則一律會採用 並傳 double 回 。

如果您使用 中的 exp<tgmath.h> 宏,引數的類型會決定選取哪一個函式版本。 如需詳細資訊,請參閱 類型泛型數學

根據預設,此函式的全域狀態會限定于應用程式。 若要變更此行為,請參閱 CRT 中的全域狀態。

需求

函式 必要的 C 標頭 必要的 C++ 標頭
exp, expf, expl <math.h> <cmath><math.h>
exp 宏觀 <tgmath.h>

如需相容性詳細資訊,請參閱相容性

範例

// 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

另請參閱

數學和浮點支援
log, logf, log10, log10f
_CIexp