tgamma(3M) Mathematical Library Functions tgamma(3M)NAME
tgamma, tgammaf, tgammal - compute gamma function
SYNOPSIS
c99 [ flag... ] file... -lm [ library... ]
#include <math.h>
double tgamma(double x);
float tgammaf(float x);
long double tgammal(long double x);
DESCRIPTION
These functions compute the gamma() function of x.
RETURN VALUES
Upon successful completion, these functions return gamma(x).
If x is a negative integer, a domain error occurs and a NaN is
returned.
If the correct value would cause overflow, a range error occurs and
tgamma(), tgammaf(), and tgammal() return the value of the macro
±HUGE_VAL, ±HUGE_VALF, or ±HUGE_VALL, respectively.
If x is NaN, a NaN is returned.
If x is ±Inf, x is returned.
If x is ±0, a pole error occurs and tgamma(), tgammaf(), and tgammal()
return ±HUGE_VAL, ±HUGE_VALF, and ±HUGE_VALL, respectively.
If x is +Inf, a domain error occurs and a NaN is returned.
ERRORS
These functions will fail if:
Domain Error The value of x is a negative integer or x is −Inf.
If the integer expression (math_errhandling &
MATH_ERREXCEPT) is non-zero, then the invalid floating-
point exception is raised.
Pole Error The value of x is zero.
If the integer expression (math_errhandling &
MATH_ERREXCEPT) is non-zero, then the divide-by-zero
floating-point exception is raised.
Range Error The value overflows.
If the integer expression (math_errhandling &
MATH_ERREXCEPT) is non-zero, then the overflow float‐
ing-point exception is raised.
USAGE
An application wanting to check for exceptions should call feclearex‐
cept(FE_ALL_EXCEPT) before calling these functions. On return, if
fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is
non-zero, an exception has been raised. An application should either
examine the return value or check the floating point exception flags to
detect exceptions.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Standard │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │MT-Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOfeclearexcept(3M), fetestexcept(3M), lgamma(3M), math.h(3HEAD),
attributes(5), standards(5)SunOS 5.10 12 Jul 2006 tgamma(3M)