sin, sinf, sinl, sinh, sinhf, sinhl
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 sin, sinf, sinl, sinh, sinhf, sinhl.
Calculates sines and hyperbolic sines.
Syntax
double sin(
double x
);
float sin(
float x
); // C++ only
long double sin(
long double x
); // C++ only
float sinf(
float x
);
long double sinl( long double x
);
double sinh(
double x
);
float sinh(
float x
); // C++ only
long double sinh(
long double x
); // C++ only
float sinhf(
float x
);
long double sinhl(
long double x
);
Parameters
x
Angle in radians.
Return Value
The sin
functions return the sine of x
. If x
is greater than or equal to 263, or less than or equal to –263, a loss of significance in the result occurs.
The sinh
functions return the hyperbolic sine of x
. By default, if the result is too large, sinh
sets errno
to ERANGE
and returns ±HUGE_VAL
.
Input | SEH Exception | Matherr Exception |
---|---|---|
± QNAN,IND | None | _DOMAIN |
± ∞ (sin, sinf, sinl) | INVALID | _DOMAIN |
|x| ≥ 7.104760e+002 (sinh, sinhf, sinhl) | OVERFLOW+INEXACT | OVERFLOW |
For more information about return codes, see errno, _doserrno, _sys_errlist, and _sys_nerr.
Remarks
Because C++ allows overloading, you can call overloads of sin
and sinh
that take and return float
or long double
values. In a C program, sin
and sinh
always take and return double
.
Requirements
Routine | Required header |
---|---|
sin , sinf , sinl , sinh , sinhf , sinhl |
<math.h> |
For additional compatibility information, see Compatibility.
Example
// crt_sincos.c
// This program displays the sine, hyperbolic
// sine, cosine, and hyperbolic cosine of pi / 2.
//
#include <math.h>
#include <stdio.h>
int main( void )
{
double pi = 3.1415926535;
double x, y;
x = pi / 2;
y = sin( x );
printf( "sin( %f ) = %f\n", x, y );
y = sinh( x );
printf( "sinh( %f ) = %f\n",x, y );
y = cos( x );
printf( "cos( %f ) = %f\n", x, y );
y = cosh( x );
printf( "cosh( %f ) = %f\n",x, y );
}
sin( 1.570796 ) = 1.000000
sinh( 1.570796 ) = 2.301299
cos( 1.570796 ) = 0.000000
cosh( 1.570796 ) = 2.509178
.NET Framework Equivalent
See Also
Floating-Point Support
acos, acosf, acosl
asin, asinf, asinl
atan, atanf, atanl, atan2, atan2f, atan2l
cos, cosf, cosl, cosh, coshf, coshl
tan, tanf, tanl, tanh, tanhf, tanhl
_CIsin