# 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**():

_XOPEN_SOURCE

|| /* Since glibc 2.19: */ _DEFAULT_SOURCE

|| /* Glibc versions <= 2.19: */ _BSD_SOURCE ||
_SVID_SOURCE

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

_XOPEN_SOURCE >= 600 ||
(_XOPEN_SOURCE && _ISOC99_SOURCE)

|| /* Since glibc 2.19: */ _DEFAULT_SOURCE

|| /* Glibc versions <= 2.19: */ _BSD_SOURCE ||
_SVID_SOURCE

## 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 recent standard. It was
documented in SVID 2.

## 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 4.15 of the Linux *man-pages* project.
A description of the project, information about reporting
bugs, and the latest version of this page, can be found at
https://www.kernel.org/doc/man-pages/.