当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C语言 lgamma用法及代码示例


C语言math头文件(math.h)中lgamma函数的用法及代码示例。

用法:

     double lgamma  (double x);
      float lgammaf (float x);
long double lgammal (long double x);
计算log-gamma函数
log-gamma function返回的绝对值的自然对数伽玛函数x

标头<tgmath.h>提供此函数的type-generic宏版本。
额外的过载在此头文件中提供(<cmath>) 为了整数类型:这些重载有效地转换x到一个double计算之前(为T有任何整数类型)。

参数

x
的参数log-gamma函数。

返回值

Log-gamma的函数x
如果x太大,溢出范围误差发生。
如果x为零或函数为渐近的负整数,可能会导致极点误差(取决于实施情况)。

如果溢出范围误差发生:
- 和math_errhandlingMATH_ERRNO设置:全局变量errno被设定为ERANGE
- 和math_errhandlingMATH_ERREXCEPT设置:FE_OVERFLOW被抛出

如果一个极点误差发生:
- 和math_errhandlingMATH_ERRNO设置:全局变量errno被设定为ERANGE
- 和math_errhandlingMATH_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

相关用法


注:本文由纯净天空筛选整理自C标准库大神的英文原创作品 C lgamma function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。