exp、expf
指数部を計算します。
double exp(
double x
);
float exp(
float x
); // C++ only
long double exp(
long double x
); // C++ only
float expf(
float x
);
パラメーター
- x
浮動小数点値。
戻り値
正常終了した場合 exp 関数の戻り値は浮動小数点パラメーター、x指数の値。 つまり、結果、e を自然対数の底 xへ e の累乗です。 のオーバーフロー、関数の戻り値 (INF 無限) と、exp アンダーフローの場合は 0 を返します。
入力 |
SEH 例外 |
Matherr 例外 |
---|---|---|
± QNAN、IND |
なし。 |
_DOMAIN |
± ∞ |
INVALID |
_DOMAIN |
X ≥ 7.097827e+002 |
INEXACT+OVERFLOW |
OVERFLOW |
X ≤ -7.083964e+002 |
INEXACT+UNDERFLOW |
アンダーフロー |
exp に ストリーミング SIMD 拡張機能 2 (SSE2) を使用して実装できます。 SSE2 実装を情報と使用条件の _set_SSE2_enable を参照してください。
解説
C++ ではオーバーロードが可能であるため、exp のオーバーロードを呼び出すことができます。 C プログラムでは、exp は常に double を受け取って返します。
必要条件
関数 |
必須ヘッダー |
---|---|
exp, expf |
<math.h> |
互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。
使用例
// 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 );
}