COSH(3M) Mathematical Library Functions COSH(3M)

NAME

cosh, coshf, coshl - hyperbolic cosine function

SYNOPSIS

```c99 [ flag... ] file... -lm [ library... ]
#include <math.h>
double cosh(double x);```

`float coshf(float x);`

`long double coshl(long double x);`

DESCRIPTION

These functions compute the hyperbolic cosine of their argument x.

RETURN VALUES

Upon successful completion, these functions return the hyperbolic cosine of x.

If the correct value would cause overflow, a range error occurs and cosh(), coshf(), and coshl() return the value of the macro HUGE_VAL, HUGE_VALF, and HUGE_VALL, respectively.

If x is NaN, a NaN is returned.

If x is ±0, 1.0 is returned.

If x is ±Inf, ±Inf is returned.

For exceptional cases, matherr(3M) tabulates the values to be returned by cosh() as specified by SVID3 and XPG3.

ERRORS

These functions will fail if:

Range Error

The result would cause an overflow.

If the integer expression (math_errhandling & MATH_ERREXCEPT) is non-zero, the overflow floating-point exception is raised.

The cosh() function sets errno to ERANGE if the result would cause an overflow.

USAGE

An application wanting to check for exceptions should call feclearexcept(FE_ALL_EXCEPT) before calling these functions. On return, if fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is non-zero, an exception has been raised. An application should either examine the return value or check the floating point exception flags to detect exceptions.

An application can also set errno to 0 before calling cosh(). On return, if errno is non-zero, an error has occurred. The coshf() and coshl() functions do not set errno.

ATTRIBUTES

See attributes(7) for descriptions of the following attributes:

 ATTRIBUTE TYPE ATTRIBUTE VALUE Interface Stability Standard MT-Level MT-Safe