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

その他の関数

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

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

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

copysign

説明: copysign 関数は、x の絶対値と y の符号を返します。

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

double copysign(double x, double y);

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

float copysignf(float x, float y);

fabs

説明: fabs 関数は、x の絶対値を返します。

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

double fabs(double x);

long double fabsl(long double x);

float fabsf(float x);

fdim

説明: fdim 関数は、正の異なる値、x-y (x >y の場合) または +0 (x <= y の場合) を返します。

errno: ERANGE、値が非常に大きい場合

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

double fdim(double x, double y);

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

float fdimf(float x, float y);

finite

説明: finite 関数は、xNaN または +/- 無限大ではない場合、1 を返します。 それ以外の場合は、0 を返します。

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

int finite(double x);

int finitel(long double x);

int finitef(float x);

fma

説明: fma 関数は、(x*y)+z を返します。

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

double fma(double x, double y, double z);

long double fmal(long double x, long double y, long double z);

float fmaf(float x, float y, float double z);

fmax

説明: fmax 関数は、引数の最大値を返します。

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

double fmax(double x, double y);

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

float fmaxf(float x, float y);

fmin

説明: fmin 関数は、引数の最小値を返します。

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

double fmin(double x, double y);

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

float fminf(float x, float y);

fpclassify

説明: fpclassify 関数は、その引数の値に適した番号分類マクロの値を返します。

戻り値

0 (NaN)

1 (無限大)

2 (ゼロ)

3 (サブノーマル)

4 (有限値)

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

double fpclassify(double x);

long double fpclassifyl(long double x);

float fpclassifyf(float x);

isfinite

説明: isfinite 関数は、x が NaN または +/- 無限大ではない場合、1 を返します。 それ以外の場合は、0 を返します。

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

int isfinite(double x);

int isfinitel(long double x);

int isfinitef(float x);

isgreater

説明: isgreater 関数は、xy よりも大きい場合、1 を返します。 この関数は、無効な浮動小数点例外を増やしません。

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

int isgreater(double x, double y);

int isgreaterl(long double x, long double y);

int isgreaterf(float x, float y);

isgreaterequal

説明: isgreaterequal 関数は、xy 以上の場合、1 を返します。 この関数は、無効な浮動小数点例外を増やしません。

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

int isgreaterequal(double x, double y);

int isgreaterequall(long double x, long double y);

int isgreaterequalf(float x, float y);

isinf

説明: isinf 関数は、引数が無限値を持つ場合のみ、非ゼロ値を返します。

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

int isinf(double x);

int isinfl(long double x);

int isinff(float x);

isless

説明: isless 関数は、xy よりも小さい場合、1 を返します。 この関数は、無効な浮動小数点例外を増やしません。

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

int isless(double x, double y);

int islessl(long double x, long double y);

int islessf(float x, float y);

islessequal

説明: islessequal 関数は、xy 以下の場合、1 を返します。 この関数は、無効な浮動小数点例外を増やしません。

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

int islessequal(double x, double y);

int islessequall(long double x, long double y);

int islessequalf(float x, float y);

islessgreater

説明: islessgreater 関数は、xy よりも小さいまたは大きい場合、1 を返します。 この関数は、無効な浮動小数点例外を増やしません。

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

int islessgreater(double x, double y);

int islessgreaterl(long double x, long double y);

int islessgreaterf(float x, float y);

isnan

説明: isnan 関数は、x が NaN 値を持つ場合のみ、非ゼロ値を返します。

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

int isnan(double x);

int isnanl(long double x);

int isnanf(float x);

isnormal

説明: isnormal 関数は、x が正規化数の場合のみ、非ゼロ値を返します。

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

int isnormal(double x);

int isnormall(long double x);

int isnormalf(float x);

isunordered

説明: isunordered 関数は、x または y のいずれかが NaN の場合、1 を返します。 この関数は、無効な浮動小数点例外を増やしません。

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

int isunordered(double x, double y);

int isunorderedl(long double x, long double y);

int isunorderedf(float x, float y);

nextafter

説明: nextafter 関数は、y 方向での x の次に表現可能な値を指定した形式で返します。

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

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

double nextafter(double x, double y);

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

float nextafterf(float x, float y);

nexttoward

説明: nexttoward 関数は、y 方向での x の次に表現可能な値を指定した形式で返します。 xy が等しい場合、関数のタイプに変換した y を返します。 正確な結果を得るには、Windows® オペレーティング・システムで Qlong-double オプションを使用してください。

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

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

double nexttoward(double x, long double y);

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

float nexttowardf(float x, long double y);

signbit

説明: signbit 関数は、x の符号が負の場合のみ、非ゼロ値を返します。

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

int signbit(double x);

int signbitl(long double x);

int signbitf(float x);

significand

説明: significand 関数は、[1,2) の範囲で x の仮数を返します。 x が 0、NaN、または +/- 無限大と等しい場合、オリジナルの x が返されます。

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

double significand(double x);

long double significandl(long double x);

float significandf(float x);