次の方法で共有


tgammatgammaftgammal

指定した値のガンマ関数を決定します。

構文

double tgamma(
   double x
);

float tgammaf(
   float x
);

long double tgammal(
   long double x
);

#define tgamma(X) // Requires C11 or higher

float tgamma(
   float x
); //C++ only

long double tgamma(
   long double x
); //C++ only

パラメーター

x
ガンマを検索する値。

戻り値

正常に終了した場合は x のガンマを返します。

x の大きさがデータ型に対して大きすぎる場合や小さすぎる場合は、範囲エラーが発生することがあります。 ドメイン エラーまたは範囲エラーは、 x< = 0 の場合に発生する可能性があります。

問題点 Return
x = ±0 ±INFINITY
x = 負の整数 NaN
x = -INFINITY NaN
x = +INFINITY +INFINITY
x = NaN NaN
ドメイン エラー NaN
極エラー ±HUGE_VAL、±HUGE_VALF、または±HUGE_VALL
オーバーフロー範囲エラー ±HUGE_VAL、±HUGE_VALF、または±HUGE_VALL
アンダーフロー範囲エラー 丸めた後の正確な値。

エラーは、_matherr で指定されたとおりに報告されます。

解説

C++ ではオーバーロードが可能であるため、tgamma 型および float 型を受け取って返す long double のオーバーロードを呼び出すことができます。 C プログラムでは、<tgmath.h> マクロを使用してこの関数を呼び出す場合を除き、tgamma では常に double を受け取って返します。

<tgmath.h>tgamma() マクロを使用する場合は、引数の型によって、この関数のどのバージョンが選択されるかが決定されます。 詳細については、「ジェネリック型数値演算」を参照してください。

x が自然数の場合、この関数は (x-1) の階乗を返します。

既定では、この関数のグローバル状態の適用対象は、アプリケーションになります。 この動作を変更するには、「CRT でのグローバル状態」を参照してください。

要件

機能 C ヘッダー C++ ヘッダー
tgammatgammaftgammal <math.h> <cmath>
tgamma マクロ <tgmath.h>

互換性の詳細については、「 Compatibility」を参照してください。

関連項目

関数リファレンス (アルファベット順)
lgammalgammaflgammal