std::tanh,std::tanhf,std::tanhl(3)

NAME
std::tanh,std::tanhf,std::tanhl - std::tanh,std::tanhf,std::tanhl

Synopsis
   Defined in header <cmath>
   float tanh ( float arg );
   float tanhf( float arg ); (since C++11)
   double tanh ( double arg ); (1) (2)
   long double tanh ( long double arg );
   long double tanhl( long double arg ); (3) (since C++11)
   double tanh ( IntegralType arg ); (4) (since C++11)
   1-3) Computes the hyperbolic tangent of arg
   4) A set of overloads or a function template accepting an argument of any integral
   type. Equivalent to 2) (the argument is cast to double).

Parameters
   arg - value of a floating-point or Integral type

Return value
   If no errors occur, the hyperbolic tangent of arg (tanh(arg), or
   earg
   -e-arg
   earg
   +e-arg
   ) is returned.
   If a range error occurs due to underflow, the correct result (after rounding) is
   returned.

Error handling
   Errors are reported as specified in math_errhandling.
   If the implementation supports IEEE floating-point arithmetic (IEC 60559),
     * if the argument is ±0, ±0 is returned
     * If the argument is ±∞, ±1 is returned
     * if the argument is NaN, NaN is returned

Notes
   POSIX specifies that in case of underflow, arg is returned unmodified, and if that
   is not supported, and implementation-defined value no greater than DBL_MIN, FLT_MIN,
   and LDBL_MIN is returned.

Examples
// Run this code
 #include <iostream>
 #include <cmath>
 int main()
 {
     std::cout << std::showpos
               << "tanh(+1) = " << std::tanh(+1) << '\n'
               << "tanh(-1) = " << std::tanh(-1) << '\n'
               << "tanh(0.1)*sinh(0.2)-cosh(0.2) = "
               << std::tanh(0.1) * std::sinh(0.2) - std::cosh(0.2) << '\n'
               // special values:
               << "tanh(+0) = " << std::tanh(+0.0) << '\n'
               << "tanh(-0) = " << std::tanh(-0.0) << '\n';
 }

Output:
 tanh(+1) = +0.761594
 tanh(-1) = -0.761594
 tanh(0.1)*sinh(0.2)-cosh(0.2) = -1
 tanh(+0) = +0
 tanh(-0) = -0

See also
   sinh
   sinhf computes hyperbolic sine (\({\small\sinh{x} }\)sinh(x))
   sinhl (function)
   (C++11)
   (C++11)
   cosh
   coshf computes hyperbolic cosine (\({\small\cosh{x} }\)cosh(x))
   coshl (function)
   (C++11)
   (C++11)
   atanh
   atanhf computes the inverse hyperbolic tangent
   atanhl (\({\small\operatorname{artanh}{x} }\)artanh(x))
   (C++11) (function)
   (C++11)
   (C++11)
                       computes hyperbolic tangent of a complex number
   tanh(std::complex) (\({\small\tanh{z} }\)tanh(z))
                       (function template)
   tanh(std::valarray) applies the function std::tanh to each element of valarray
                       (function template)