acosh, acoshf, acoshl

来自cppreference.com
< c‎ | numeric‎ | math
 
 
 
常用数学函数
类型
(C99)(C99)    

(C99)(C99)    

函数
基本运算
(C99)
(C99)
(C99)
(C99)(C99)(C99)(C23)
最大/最小运算
(C99)
(C23)    
指数函数
(C23)
(C99)
(C99)
(C23)
(C23)
(C99)
(C99)(C23)
(C23)
(C23)
幂函数
(C99)
(C23)
(C23)
(C99)
(C23)
(C23)
三角及双曲函数
(C23)
(C23)
(C23)
(C23)
(C99)
acosh
(C99)
(C99)
误差及伽马函数
(C99)
(C99)
(C99)
(C99)
临近整数的浮点运算
(C99)(C99)(C99)
(C99)
(C99)(C99)(C99)
(C23)(C23)(C23)(C23)
浮点操作函数
(C99)(C99)
(C99)(C23)
(C99)
窄化运算
(C23)
(C23)
(C23)
(C23)
(C23)
(C23)
量与量指数函数
十进制重编码函数
全序与载荷函数
分类
(C99)
(C99)
(C99)
(C23)
宏常量
特殊浮点值
(C99)(C23)
参数与返回值
(C99)(C99)(C99)(C99)(C99)    
错误处理
(C99)    

 
在标头 <math.h> 定义
float       acoshf( float arg );
(1) (C99 起)
double      acosh( double arg );
(2) (C99 起)
long double acoshl( long double arg );
(3) (C99 起)
在标头 <tgmath.h> 定义
#define acosh( arg )
(4) (C99 起)
1-3) 计算 arg 的反双曲余弦。
4) 泛型宏:若参数拥有 long double 类型,则调用 acoshl。否则,若参数拥有整数类型或 double 类型,则调用 acosh。否则调用 acoshf。若参数为复数,则宏调用对应的复数函数(cacoshfcacoshcacoshl)。

参数

arg - 表示双曲扇形面积的浮点值

返回值

若不出现错误,则返回 arg 在区间 [0, +∞] 上的反双曲余弦(cosh-1
(arg)
arcosh(arg))。

若出现定义域错误,则返回实现定义值(受支持平台上为 NaN)。

错误处理

报告 math_errhandling 中指定的错误。

若实参小于 1,则出现定义域错误。

若实现支持 IEEE 浮点算术(IEC 60559),则

  • 若实参小于 1,则引发 FE_INVALID 并返回 NaN
  • 若实参为 1,则返回 +0
  • 若实参为 +∞,则返回 +∞
  • 若实参为 NaN,则返回 NaN

注解

虽然 C 标准命名此函数为“弧双曲余弦”,但双曲函数的反函数仍是面积函数。其实参是双曲扇形的面积,而非弧长。正确的名称是“反双曲余弦”(POSIX 所用)或“面积双曲余弦”。

示例

#include <errno.h>
#include <fenv.h>
#include <float.h>
#include <math.h>
#include <stdio.h>
// #pragma STDC FENV_ACCESS ON
 
int main(void)
{
    printf("acosh(1) = %f\nacosh(10) = %f\n", acosh(1), acosh(10));
    printf("acosh(DBL_MAX) = %f\nacosh(Inf) = %f\n", acosh(DBL_MAX), acosh(INFINITY));
 
    // 错误处理
    errno = 0; feclearexcept(FE_ALL_EXCEPT);
    printf("acosh(0.5) = %f\n", acosh(0.5));
    if (errno == EDOM)
        perror("    errno == EDOM");
    if (fetestexcept(FE_INVALID))
        puts("    FE_INVALID raised");
}

可能的输出:

acosh(1) = 0.000000
acosh(10) = 2.993223
acosh(DBL_MAX) = 710.475860
acosh(Inf) = inf
acosh(0.5) = -nan
    errno == EDOM: Numerical argument out of domain
    FE_INVALID raised

引用

  • C23 标准(ISO/IEC 9899:2024):
  • 7.12.5.1 The acosh functions (第 TBD 页)
  • 7.27 Type-generic math <tgmath.h> (第 TBD 页)
  • F.10.2.1 The acosh functions (第 TBD 页)
  • C17 标准(ISO/IEC 9899:2018):
  • 7.12.5.1 The acosh functions (第 175 页)
  • 7.25 Type-generic math <tgmath.h> (第 272-273 页)
  • F.10.2.1 The acosh functions (第 379 页)
  • C11 标准(ISO/IEC 9899:2011):
  • 7.12.5.1 The acosh functions (第 240 页)
  • 7.25 Type-generic math <tgmath.h> (第 373-375 页)
  • F.10.2.1 The acosh functions (第 520 页)
  • C99 标准(ISO/IEC 9899:1999):
  • 7.12.5.1 The acosh functions (第 221 页)
  • 7.22 Type-generic math <tgmath.h> (第 335-337 页)
  • F.9.2.1 The acosh functions (第 457 页)

参阅

(C99)(C99)(C99)
计算反双曲正弦(arsinh(x)
(函数)
(C99)(C99)(C99)
计算反双曲正切(artanh(x)
(函数)
(C99)(C99)
计算双曲余弦(cosh(x)
(函数)
(C99)(C99)(C99)
计算复数反双曲余弦
(函数)

外部链接

  Weisstein, Eric W. “反双曲余弦”来自 MathWorld--A Wolfram Web Resource。