Computes hyperbolic sine.
#include <math.h>
double sinh ( x)
double x;
float sinhf (x)
float x;
long double sinhl (x)
long double x;
_Decimal32 sinhd32 (x)
_Decimal32 x;
_Decimal64 sinhd64 (x)
_Decimal64 x;
_Decimal128 sinhd128 (x)
_Decimal128 x;
The sinh, sinhf, sinhl, sinhd32, sinhd64, and sinhd128 subroutines compute the hyperbolic sine of the x parameter.
An application wishing to check for error situations should set the errno global variable to zero and call feclearexcept(FE_ALL_EXCEPT) before calling these subroutines. Upon return, if errno is nonzero or fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is nonzero, an error has occurred.
Item | Description |
---|---|
x | Specifies a double-precision floating-point value. |
Upon successful completion, the sinh, sinhf, sinhl, sinhd32, sinhd64, and sinhd128 subroutines return the hyperbolic sine of x.
If the result would cause an overflow, a range error occurs and ±HUGE_VAL, ±HUGE_VALF, ±HUGE_VALL, ±HUGE_VAL_D32, ±HUGE_VAL_D64, and ±HUGE_VAL_D128 (with the same sign as x) is returned as appropriate for the type of the function.
If x is NaN, a NaN is returned.
If x is ±0 or infinite, x is returned.
If x is subnormal, a range error may occur and x should be returned.
If the correct value overflows, the sinh, sinhf, sinhl, sinhd32, sinhd64, and sinhd128 subroutines return a correctly signed HUGE_VAL, and the errno global variable is set to ERANGE.
These error-handling procedures should be changed with the matherr subroutine when the libmsaa.a (-lmsaa) library is used.