expm1
、 expm1f
、 expm1l
e を底とする値のべき乗から 1 を引く計算を行います。
構文
double expm1(
double x
);
float expm1(
float x
); // C++ only
long double expm1(
long double x
); // C++ only
float expm1f(
float x
);
long double expm1l(
long double x
);
#define expm1(X) // Requires C11 or higher
パラメーター
x
浮動小数点の指数値。
戻り値
expm1
関数は、成功した場合は ex - 1 を表す浮動小数点値を返します。 オーバーフローが発生すると、expm1
は HUGE_VAL
を返し、expm1f
は HUGE_VALF
を返し、expm1l
は HUGE_VALL
を返します。errno
は ERANGE
に設定されます。 リターン コードの詳細については、「errno
、_doserrno
、_sys_errlist
、および _sys_nerr
」を参照してください。
解説
C++ ではオーバーロードが可能であるため、 expm1
および float
の値を受け取って返す long double
のオーバーロードを呼び出すことができます。 C プログラムでは、<tgmath.h> マクロを使用してこの関数を呼び出す場合を除き、expm1
では常に double
を受け取って返します。
<tgmath.h>expm1()
マクロを使用する場合は、引数の型によって、この関数のどのバージョンが選択されるかが決定されます。 詳細については、「ジェネリック型数値演算」を参照してください。
要件
ルーチンによって返される値 | 必須ヘッダー |
---|---|
expm1 、 expm1f 、 expm1l |
<math.h> |
expm1 マクロ |
<tgmath.h> |
互換性の詳細については、「 Compatibility」を参照してください。