NAME

sin, sinf, sinl – sine function  

SYNOPSIS

#include <math.h>

double sin(double x);

float sinf(float x);
long double sinl(long double x);

Link with -lm.

Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

sinf(), sinl():

_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
or cc -std=c99
 

DESCRIPTION

The sin() function returns the sine of x, where x is given in radians.  

RETURN VALUE

On success, these functions return the sine of x.

If x is a NaN, a NaN is returned.

If x is positive infinity or negative infinity, a domain error occurs, and a NaN is returned.  

ERRORS

See math_error(7) for information on how to determine whether an error has occurred when calling these functions.

The following errors can occur:

Domain error: x is an infinity
errno is set to EDOM (but see BUGS). An invalid floating-point exception (FE_INVALID) is raised.
 

ATTRIBUTES

 

Multithreading (see pthreads(7))

The sin(), sinf(), and sinl() functions are thread-safe.  

CONFORMING TO

C99, POSIX.1-2001. The variant returning double also conforms to SVr4, 4.3BSD, C89.  

BUGS

Before version 2.10, the glibc implementation did not set errno to EDOM when a domain error occurred.  

Willie has over 15 years of experience in Linux system administration and DevOps. After managing infrastructure for startups and enterprises alike, he founded Command Linux to share the practical knowledge he wished he had when starting out. He oversees content strategy and contributes guides on server management, automation, and security.