C++官网参考链接:https://cplusplus.com/reference/cmath/cosh/
函数
<cmath> <ctgmath>
cosh
C90
double cosh (double x);
C99
double cosh (double x);
float coshf (float x);
long double coshl (long double x);
C++98
double cosh (double x);
float cosh (float x);
long double cosh (long double x);
C++11
double cosh (double x);
float cosh (float x);
long double cosh (long double x);
double cosh (T x); // additional overloads for integral types
计算双曲余弦
返回x的双曲余弦。
C99
头文件<tgmath.h>提供了该函数的泛型类型的宏版本。
C++98
该函数在头文件<complex>和<valarray>中重载(参见complex cosh和valarray cosh)。
C++11
在此头文件(<cmath>)中为整型(integral types)提供了额外的重载:这些重载在计算之前有效地将x转换为double类型(定义T为任何整型(integral type))。
此函数在<complex>和<valarray>中也被重载(参见complex cosh和valarray cosh)。
形参
x
表示双曲角度的值。
返回值
x的双曲余弦。
如果结果的绝对大小太大,不能用返回类型的值表示,函数返回HUGE_VAL(或HUGE_VALF或HUGE_VALL)和适当的符号,并发生上溢范围错误:
C90/C++98
如果发生上溢范围错误,则将全局变量errno设置为ERANGE。
C99/C++11
如果发生上溢范围错误:
—math_errhandling具有MATH_ERRNO集合:全局变量errno设置为ERANGE。
—math_errhandling具有MATH_ERREXCEPT集合:引发FE_OVERFLOW。
用例
/* cosh example */
#include <stdio.h> /* printf */
#include <math.h> /* cosh, log */
int main ()
{
double param, result;
param = log(2.0);
result = cosh (param);
printf ("The hyperbolic cosine of %f is %f.\n", param, result );
return 0;
}
输出: