函数
<cmath> <ctgmath>

acosh

     double acosh  (double x);      float acoshf (float x);long double acoshl (long double x);
     double acosh (double x);      float acosh (float x);long double acosh (long double x);     double acosh (T x);           // additional overloads for integral types
计算反双曲余弦
返回x的非负反双曲余弦。

反双曲余弦双曲余弦的逆运算。

头文件 <tgmath.h> 提供了此函数的类型通用宏版本。
在此头文件(<cmath>)中为整数类型提供了附加重载:这些重载会有效地将x强制转换为double再进行计算(针对T是任何整数类型定义)。

此函数也在<complex>中重载(请参阅 complex acosh)。

参数

x
计算其反双曲余弦的值。
如果参数小于1,则会发生定义域错误

返回值

x的非负反双曲余弦,在区间[0,+INFINITY]内。
请注意,该值的负值也是x的有效反双曲余弦
如果发生定义域错误
- 并且 math_errhandling 设置了 MATH_ERRNO:全局变量 errno 会被设置为 EDOM
- 并且 math_errhandling 设置了 MATH_ERREXCEPT:将引发 FE_INVALID

示例

1
2
3
4
5
6
7
8
9
10
11
12
/* acosh example */
#include <stdio.h>      /* printf */
#include <math.h>       /* acosh, exp, sinh */

int main ()
{
  double param, result;
  param = exp(2) - sinh(2);
  result = acosh(param) ;
  printf ("The area hyperbolic cosine of %f is %f radians.\n", param, result);
  return 0;
}

输出

The area hyperbolic cosine of 3.762196 is 2.000000 radians.


另见