Home C&C++函数库 c++ 语法 程序源码 Linux C库

lgamma

函数  <cmath> <ctgmath>

C99 double lgamma (double x);
float lgammaf (float x);
long double lgammal (long double x);
C++11 double lgamma (double x);
float lgamma (float x);
long double lgamma (long double x);
double lgamma (T x);     // additional overloads for integral types

计算log-gamma函数
返回函数x的绝对值的自然对数
C99 头文件<tgmath.h> 提供了该函数的泛型类型宏版本。
C++11 这个头文件(<cmath>)为整型提供了额外的重载:这些重载在计算之前将x转换为double (在T是任何整型时定义)。
lgamma

☲  参数


x
log-gamma函数的参数

☉  返回值



x的log-gamma函数

如果x太大,则会发生溢出范围错误。
如果x为零或渐近函数的负整数,它可能会导致极点误差(取决于实现)。

如果发生溢出范围错误:
-并且math_errhandling设置了MATH_ERRNO:全局变量errno设置为ERANGE。
-并且math_errhandling设置了MATH_ERREXCEPT:触发FE_OVERFLOW

如果发生极点错误:
-并且math_errhandling设置了MATH_ERRNO:全局变量errno设置为ERANGE。
-并且math_errhandling设置了MATH_ERREXCEPT:触发 FE_DIVBYZERO

☣  示例



/* lgamma example */
#include <stdio.h>      /* printf */
#include <math.h>       /* lgamma */

int main ()
{
  double param, result;
  param = 0.5;
  result = lgamma (param);
  printf ("lgamma(%f) = %f\n", param, result );
  return 0;
}

输出:
lgamma (0.500000) = 0.572365

🍄  另请参阅



erf 误差函数(function )
tgamma 计算伽马函数(function )
erfc 互补误差函数(function )

联系我们 免责声明 关于CandCplus 网站地图