lgamma(3) signgam

ÜBERSICHT

#include <math.h>


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;

Linken Sie mit der Option -lm.

Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

lgamma():

_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE
    || /* Seit Glibc 2.19: */ _DEFAULT_SOURCE
    || /* Glibc-Versionen <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

lgammaf(), lgammal():
_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
    || /* Seit Glibc 2.19: */ _DEFAULT_SOURCE
    || /* Glibc-Versionen <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
lgamma_r(), lgammaf_r(), lgammal_r():
/* Seit Glibc 2.19: */ _DEFAULT_SOURCE
    || /* Glibc-Versionen <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
signgam:
_XOPEN_SOURCE
    || /* Seit Glibc 2.19: */ _DEFAULT_SOURCE
    || /* Glibc-Versionen <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

BESCHREIBUNG

Die Definition der Gammafunktion finden Sie unter tgamma(3).

Die Funktionen lgamma(), lgammaf() und lgammal() geben den natürlichen Logarithmus des Betrages der Gammafunktion zurück. Das Vorzeichen der Gammafunktion wird in der externen Ganzzahl signgam zurückgegeben, die in <math.h> deklariert ist. Sie ist 1, wenn die Gammafunktion positiv oder Null ist und -1, wenn sie negativ ist.

Da die Benutzung eines konstanten signgam-Ortes nicht multithread-fähig ist, wurden die Funktionen lgamma_r(), lgammaf_r() und lgammal_r() eingeführt; sie geben das Vorzeichen über das Argument signp zurück.

RÜCKGABEWERT

Bei Erfolg geben diese Funktionen den natürlichen Logarithmus von Gamma(x) zurück.

Falls x keine zulässige Zahl (»NaN«) ist, wird »NaN« zurückgegeben.

Falls x 1 oder 2 ist, wird +0 zurückgegeben.

Falls x positiv unendlich oder negativ unendlich ist, wird positiv unendlich zurückgegeben.

Falls x eine nicht positive Ganzzahl ist, tritt ein Polstellenfehler auf und die Funktionen geben +HUGE_VAL, +HUGE_VALF beziehungsweise +HUGE_VALL zurück.

Bei einem Ergebnisüberlauf tritt ein Bereichsfehler auf und die Funktionen geben HUGE_VAL, HUGE_VALF beziehungsweise HUGE_VALL mit dem korrekten Vorzeichen zurück.

FEHLER

In math_error(7) erfahren Sie, wie Sie Fehler bei der Ausführung mathematischer Funktionen erkennen.

Die folgenden Fehler können auftreten:

Polstellenfehler: x ist eine nicht positive Ganzzahl.
errno wird auf ERANGE gesetzt (siehe aber FEHLER). Es wird der Fließkomma-Ausnahmefehler »Division durch Null« (FE_DIVBYZERO) ausgelöst.
Bereichsfehler: Ergebnisüberlauf
errno wird auf ERANGE gesetzt. Es wird der Fließkomma-Ausnahmefehler »Überlauf« (FE_OVERFLOW) ausgelöst.

KONFORM ZU

Die lgamma()-Funktionen sind in C99, POSIX.1-2001 und POSIX.1-2008 spezifiziert. signgam ist in POSIX.1-2001 und POSIX.1-2008 spezifiziert, aber nicht in C99. Die lgamma_r()-Funktionen sind nicht Standard, aber auf mehreren anderen Systemen vorhanden.

FEHLER

Bis einschließlich Glibc 2.9 wurde, wenn ein Polstellenfehler auftrat, errno auf EDOM statt des von POSIX vorgeschriebenen ERANGE gesetzt. Seit Version 2.10 tut Glibc das Richtige.

KOLOPHON

Diese Seite ist Teil der Veröffentlichung 4.06 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Markus Schmitt <[email protected]> und Chris Leick <[email protected]> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <[email protected]>.