sin, sinf, sinh, sinhf
Calculate sines and hyperbolic sines.
double sin( double x ); float sin( float x ); // C++ only long double sin( long double x ); // C++ only float sinf( float x ); double sinh( double x ); float sinh( float x ); // C++ only long double sinh( long double x ); // C++ only float sinhf( float x );
Parameters
- x
- Angle in radians.
Return Value
sin returns 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
sinh returns the hyperbolic sine of x. If the result is too large, sinh sets errno to ERANGE and returns ±HUGE_VAL, by default.
| Input | SEH Exception | Matherr Exception |
|---|---|---|
| ± QNAN,IND | None | _DOMAIN |
| ± ∞ (sin, sinf) | INVALID | _DOMAIN |
| |x| ≥ 7.104760e+002 (sinh, sinhf) | OVERFLOW+INEXACT | OVERFLOW |
See _doserrno, errno, _sys_errlist, and _sys_nerr for more information on these, and other, return codes.
Remarks
C++ allows overloading, so users can call overloads of sin and sinh that take double, float or long double types. In a C program, the sin and sinh functions always take and return double and float, respectively.
Requirements
| Routine | Required header | Compatibility |
|---|---|---|
| sin, sinf, sinh, sinhf | <math.h> | ANSI, Win 98, Win Me, Win NT, Win 2000, Win XP |
For additional compatibility information, see Compatibility in the Introduction.
Libraries
All versions of the C run-time libraries.
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 );
}
Output
sin( 1.570796 ) = 1.000000 sinh( 1.570796 ) = 2.301299 cos( 1.570796 ) = 0.000000 cosh( 1.570796 ) = 2.509178
See Also
Floating-Point Support Routines | acos | asin | atan | cos | tan | Run-Time Routines and .NET Framework Equivalents