The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.
We recommend using Visual Studio 2017

# asinh, asinhf, asinhl

Visual Studio 2015

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at asinh, asinhf, asinhl.

Calculates the inverse hyperbolic sine.

## Syntax

```double asinh(
double x
);
float asinh(
float x
);  // C++ only
long double asinh(
long double x
);  // C++ only
float asinhf(
float x
);
long double asinhl(
long double x
);

```

#### Parameters

`x`
Floating-point value.

## Return Value

The `asinh` functions return the inverse hyberbolic sine (arc hyperbolic sine) of `x`. This function is valid over the floating-point domain. If `x` is a quiet NaN, indefinite, or infinity, the same value is returned.

InputSEH Exception`_matherr` Exception
± QNAN, IND, INFnonenone

## Remarks

When you use C++, you can call overloads of `asinh` that take and return `float` or `long double` values. In a C program, `asinh` always takes and returns `double`.

## Requirements

`asinh`, `asinhf`, `asinhl`<math.h><cmath>

For additional compatibility information, see Compatibility.

## Example

```// crt_asinh.c
// Compile by using: cl /W4 crt_asinh.c
// This program displays the hyperbolic sine of pi / 4
// and the arc hyperbolic sine of the result.

#include <math.h>
#include <stdio.h>

int main( void )
{
double pi = 3.1415926535;
double x, y;

x = sinh( pi / 4 );
y = asinh( x );
printf( "sinh( %f ) = %f\n", pi/4, x );
printf( "asinh( %f ) = %f\n", x, y );
}

```
```sinh( 0.785398 ) = 0.868671
asinh( 0.868671 ) = 0.785398

```

## .NET Framework Equivalent

Not applicable. To call the standard C function, use `PInvoke`. For more information, see Platform Invoke Examples.