lgamma(3) Library Functions Manual lgamma(3) lgamma, lgammaf, lgammal, lgamma_r, lgammaf_r, lgammal_r, signgam - (libm -lm) #include double lgamma(double x); float lgammaf(float x); long double lgammal(long double x); double lgamma_r(double x, int *signp); float lgammaf_r(float x, int *signp); long double lgammal_r(long double x, int *signp); extern int signgam; glibc ( feature_test_macros(7)): lgamma(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE || /* Since glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE lgammaf(), lgammal(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || /* Since glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE lgamma_r(), lgammaf_r(), lgammal_r(): /* glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE signgam: _XOPEN_SOURCE || /* glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE tgamma(3). lgamma() lgammaf() lgammal() . signgam . 1 -1 . signgam lgamma_r() lgammaf_r() lgammal_r() signp. Gamma(x). x (NaN) NaN. x 1 2 +0. x . x +HUGE_VAL +HUGE_VALF +HUGE_VALL . HUGE_VAL HUGE_VALF HUGE_VALL . math_error(7) . : : x errno ERANGE ( BUGS). (FE_DIVBYZERO). : errno ERANGE. (FE_OVERFLOW). lgamma() lgammaf() lgammal() C11, POSIX.1-2008. signgam POSIX.1-2008. lgamma_r() lgammaf_r() lgammal_r() . lgamma() lgammaf() lgammal() C99 POSIX.1-2001. signgam POSIX.1-2001. lgamma_r() lgammaf_r() lgammal_r() . glibc 2.9 errno EDOM ERANGE POSIX. glibc 2.10 glibc . tgamma(3) 3 . . : . 6.18 8 2026 lgamma(3)