SINCOS
Section: Linux Programmer's Manual (3)
Updated: 20170915
Index
Return to Main Contents
NAME
sincos, sincosf, sincosl  calculate sin and cos simultaneously
SYNOPSIS
#define _GNU_SOURCE /* See feature_test_macros(7) */
#include <math.h>
void sincos(double x, double *sin, double *cos);
void sincosf(float x, float *sin, float *cos);
void sincosl(long double x, long double *sin, long double *cos);
Link with lm.
DESCRIPTION
Several applications need sine and cosine of the same angle
x.
These functions compute both at the same time, and store the results in
*sin
and
*cos.
Using this function can be more efficient than two separate calls to
sin(3)
and
cos(3).
If
x
is a NaN,
a NaN is returned in
*sin
and
*cos.
If
x
is positive infinity or negative infinity,
a domain error occurs, and
a NaN is returned in
*sin
and
*cos.
RETURN VALUE
These functions return
void.
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

An invalid floatingpoint exception
(FE_INVALID)
is raised.
These functions do not set
errno.
VERSIONS
These functions first appeared in glibc in version 2.1.
ATTRIBUTES
For an explanation of the terms used in this section, see
attributes(7).
Interface  Attribute  Value

sincos(),
sincosf(),
sincosl()
 Thread safety  MTSafe

CONFORMING TO
These functions are GNU extensions.
NOTES
To see the performance advantage of
sincos(),
it may be necessary to disable
gcc(1)
builtin optimizations, using flags such as:
cc O lm fnobuiltin prog.c
SEE ALSO
cos(3),
sin(3),
tan(3)
COLOPHON
This page is part of release 4.15 of the Linux
manpages
project.
A description of the project,
information about reporting bugs,
and the latest version of this page,
can be found at
https://www.kernel.org/doc/manpages/.
Index
 NAME

 SYNOPSIS

 DESCRIPTION

 RETURN VALUE

 ERRORS

 VERSIONS

 ATTRIBUTES

 CONFORMING TO

 NOTES

 SEE ALSO

 COLOPHON

This document was created by
man2html,
using the manual pages.
Time: 11:36:11 GMT, September 25, 2018