# GAMMA

NAME

SYNOPSIS

DESCRIPTION

RETURN VALUE

ERRORS

ATTRIBUTES

CONFORMING TO

NOTES

SEE ALSO

COLOPHON

## NAME

gamma, gammaf,
gammal − (logarithm of the) gamma function

## SYNOPSIS

**#include
<math.h>**

**double
gamma(double** *x***); **

float gammaf(float *x***); **

long double gammal(long double *x***);**

Link with
*−lm*.

Feature Test
Macro Requirements for glibc (see
**feature_test_macros**(7)):

**gamma**():

_BSD_SOURCE || _SVID_SOURCE ||
_XOPEN_SOURCE

**gammaf**(),
**gammal**():

_BSD_SOURCE || _SVID_SOURCE ||
_XOPEN_SOURCE >= 600

## DESCRIPTION

These functions
are deprecated: instead, use either the **tgamma**(3) or
the **lgamma**(3) functions, as appropriate.

For the
definition of the Gamma function, see **tgamma**(3).

***BSD
version**

The libm in 4.4BSD and some versions of FreeBSD had a
**gamma**() function that computes the Gamma function, as
one would expect.

**glibc
version**

Glibc has a **gamma**() function that is equivalent to
**lgamma**(3) and computes the natural logarithm of the
Gamma function.

## RETURN VALUE

See
**lgamma**(3).

## ERRORS

See
**lgamma**(3).

## ATTRIBUTES

For an
explanation of the terms used in this section, see
**attributes**(7).

## CONFORMING TO

Because of
historical variations in behavior across systems, this
function is not specified in any standard.

## NOTES

**History**

4.2BSD had a **gamma**() that computed
ln(|Gamma(|*x*|)|), leaving the sign of
Gamma(|*x*|) in the external integer *signgam*. In
4.3BSD the name was changed to **lgamma**(3), and the man
page promises

"At some
time in the future the name gamma will be rehabilitated and
used for the Gamma function"

This did indeed
happen in 4.4BSD, where **gamma**() computes the Gamma
function (with no effect on *signgam*). However, this
came too late, and we now have **tgamma**(3), the
"true gamma" function.

## SEE ALSO

**lgamma**(3),
**signgam**(3), **tgamma**(3)

## COLOPHON

This page is
part of release 3.53 of the Linux *man-pages* project.
A description of the project, and information about
reporting bugs, can be found at
http://www.kernel.org/doc/man−pages/.