インテル® C++ コンパイラー 17.0 デベロッパー・ガイドおよびリファレンス

指数関数

インテルの数学ライブラリーの多くのルーチンは、互換マイクロプロセッサーよりもインテル製マイクロプロセッサーでより高度に最適化されます。

mathimf.h ヘッダーファイルには、インテルの数学ライブラリー関数のプロトタイプが含まれています。

インテルの数学ライブラリーは、次の指数関数をサポートします。

cbrt

説明: cbrt 関数は、x の立方根を返します。

呼び出しインターフェイス:

double cbrt(double x);

long double cbrtl(long double x);

float cbrtf(float x);

exp

説明: exp 関数は、ex 乗した値、ex を返します。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double exp(double x);

long double expl(long double x);

float expf(float x);

exp10

説明: exp10 関数は、10 を x 乗した値、10x を返します。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double exp10(double x);

long double exp10l(long double x);

float exp10f(float x);

exp2

説明: exp2 関数は、2 を x 乗した値、2x を返します。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double exp2(double x);

long double exp2l(long double x);

float exp2f(float x);

expm1

説明: expm1 関数は、ex 乗した値から 1 を引いた、ex - 1 を返します。

errno: ERANGE、オーバーフロー状態の場合

呼び出しインターフェイス:

double expm1(double x);

long double expm1l(long double x);

float expm1f(float x);

frexp

説明: frexp 関数は、x の浮動小数点数を、2 の累乗を乗じた [1/2, 1) 範囲で符号付き正規化分数に変換します。 符号付き正規化分数が返され、その整数の指数部分を exp に格納します。

呼び出しインターフェイス:

double frexp(double x, int *exp);

long double frexpl(long double x, int *exp);

float frexpf(float x, int *exp);

hypot

説明: hypot 関数は、(x2 + y2) の平方根を返します。

errno: ERANGE、オーバーフロー状態の場合

呼び出しインターフェイス:

double hypot(double x, double y);

long double hypotl(long double x, long double y);

float hypotf(float x, float y);

ilogb

説明: ilogb 関数は、x のべき指数を符号付き int 値として返します。

errno: ERANGE、x = 0 の場合

呼び出しインターフェイス:

int ilogb(double x);

int ilogbl(long double x);

int ilogbf(float x);

invsqrt

説明: invsqrt 関数は、逆平方根を返します。

呼び出しインターフェイス:

double invsqrt(double x);

long double invsqrtl(long double x);

float invsqrtf(float x);

ldexp

説明: ldexp 関数は x*2exp を返します。exp は整数値です。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double ldexp(double x, int exp);

long double ldexpl(long double x, int exp);

float ldexpf(float x, int exp);

log

説明: log 関数は、x の自然対数、ln(x) を返します。

errno: EDOM、x < 0 の場合

errno: ERANGE、x = 0 の場合

呼び出しインターフェイス:

double log(double x);

long double logl(long double x);

float logf(float x);

log10

説明: log10 関数は、基数 10 の x の対数、log10(x) を返します。

errno: EDOM、x < 0 の場合

errno: ERANGE、x = 0 の場合

呼び出しインターフェイス:

double log10(double x);

long double log10l(long double x);

float log10f(float x);

log1p

説明: log1p 関数は、(x+1) の自然対数、ln(x + 1) を返します。

errno: EDOM、x > 1 の場合

errno: ERANGE、x = 1 の場合

呼び出しインターフェイス:

double log1p(double x);

long double log1pl(long double x);

float log1pf(float x);

log2

説明: log2 関数は、基数 2 の x の対数、log2(x) を返します。

errno: EDOM、x < 0 の場合

errno: ERANGE、x = 0 の場合

呼び出しインターフェイス:

double log2(double x);

long double log2l(long double x);

float log2f(float x);

logb

説明: logb 関数は、x の符号付き指数を返します。

errno: EDOM、x = 0 の場合

呼び出しインターフェイス:

double logb(double x);

long double logbl(long double x);

float logbf(float x);

pow

説明: pow 関数は、xy 乗した値、xy を返します。

呼び出しインターフェイス:

errno: EDOM、x = 0、y < 0 の場合

errno: EDOM、x < 0 および y が整数ではない場合

errno: ERANGE、オーバーフローおよびアンダーフロー状態の場合

呼び出しインターフェイス:

double pow(double x, double y);

long double powl(double x, double y);

float powf(float x, float y);

scalb

説明: scalb 関数は、x*2y を返します。y は浮動小数点値です。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double scalb(double x, double y);

long double scalbl(long double x, long double y);

float scalbf(float x, float y);

scalbn

説明: scalbn 関数は、x*2n を返します。n は整数値です。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double scalbn(double x, int n);

long double scalbnl (long double x, int n);

float scalbnf(float x, int n);

scalbln

説明: scalbln 関数は、x*2n を返します。n は long 整数値です。

errno: ERANGE、アンダーフローおよびオーバーフロー状態の場合

呼び出しインターフェイス:

double scalbln(double x, long int n);

long double scalblnl (long double x, long int n);

float scalblnf(float x, long int n);

sqrt

説明: sqrt 関数は、正確な丸め平方根を返します。

errno: EDOM、x < 0 の場合

呼び出しインターフェイス:

double sqrt(double x);

long double sqrtl(long double x);

float sqrtf(float x);