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

expm1

函数  <cmath> <ctgmath>

C99 double expm1 (double x);
float expm1f (float x);
long double expm1l (long double x);
C++11 double expm1 (double x);
float expm1 (float x);
long double expm1 (long double x);
double expm1 (T x);     // additional overloads for integral types

指数运算减1
返回e的x次方减1:ex-1。 对于较小的x幅值,expm1可能比exp(x)-1更精确。
C99 头文件<tgmath.h> 提供了该函数的泛型类型宏版本。
C++11 这个头文件(<cmath>)为整型提供了额外的重载:这些重载在计算之前将x转换为double (在T是任何整型时定义)。

☲  参数


x
指数的值。

☉  返回值



e的x次方减去 1。
如果结果的值太大,无法用返回类型的值表示, 则该函数返回带有正确符号的HUGE_VAL (或HUGE_VALFHUGE_VALL),并发生溢出范围错误:
如果出现溢出范围错误:
-并且math_errhandling设置了MATH_ERRNO: 全局变量errno设置为 ERANGE。
-并且math_errhandling设置了MATH_ERREXCEPT: 触发FE_OVERFLOW

☣  示例



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

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

输出:
expm1 (1.000000) = 1.718282.

🍄  另请参阅



log1p 对数运算加1(function )
pow 幂(function )
exp 计算指数(function )

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