tgamma
, tgammaf
, tgammal
Belirtilen değerin gama işlevini belirler.
Sözdizimi
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
Parametreler
x
Gamasını bulmak için değer.
Dönüş değeri
Başarılı olursa, değerinin gamasını x
döndürür.
Büyüklüğünü x
veri türü için çok büyük veya çok küçükse bir aralık hatası oluşabilir. = 0 olduğunda x
<bir etki alanı hatası veya aralık hatası oluşabilir.
Sorun | İade |
---|---|
x = ±0 |
±FINITY |
x = negatif tamsayı |
NaN |
x = -SONSUZLUK |
NaN |
x = +SONSUZLUK |
+INFINITY |
x = NaN |
NaN |
etki alanı hatası | NaN |
kutup hatası | HUGE_VAL ±, ±HUGE_VALF veya ±HUGE_VALL |
taşma aralığı hatası | HUGE_VAL ±, ±HUGE_VALF veya ±HUGE_VALL |
yetersiz akış aralığı hatası | yuvarladıktan sonra doğru değeri seçin. |
Hatalar içinde _matherr
belirtildiği gibi bildirilir.
Açıklamalar
C++ aşırı yüklemeye izin verdiğinden, bu alma ve dönüş float
ile long double
türlerinin tgamma
aşırı yüklemelerini çağırabilirsiniz. C programında, bu işlevi çağırmak için tgmath.h makrosunu <kullanmıyorsanız, tgamma
her zaman bir double
alır ve döndürür.>
tgmath.h>tgamma()
makroyu <kullanırsanız, işlevin hangi sürümünün seçili olduğunu bağımsız değişkenin türü belirler. Ayrıntılar için bkz . Tür genel matematik .
x doğal bir sayıysa, bu işlev (x-1) faktöriyelini döndürür.
Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.
Gereksinimler
İşlev | C üst bilgisi | C++ üst bilgisi |
---|---|---|
tgamma , tgammaf , tgammal |
<math.h> | <cmath> |
tgamma Makro |
<tgmath.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.