__SINCOS(3) Library Functions Manual __SINCOS(3)

__sincossine-cosine function

#include <math.h>

void
__sincosf(float x, float *sinp, float *cosp);

void
__sincos(double x, double *sinp, double *cosp);

The () function computes the sine and cosine of x (measured in radians) and stores the sine in the memory pointed to by sinp and the cosine in the memory pointed to by cosp.

__sincos(±0, sinp, cosp) sets *sinp to ±0 and sets *cosp to +1.

(±infinity, sinp, cosp) raises the "invalid" floating-point exception and sets both *sinp and *cosp to NaN.

If you need to apply the __sincos() function to SIMD vectors or arrays, using the following functions provided by the Accelerate.framework may be useful:

#include <Accelerate/Accelerate.h>

vFloat (vFloat x, vFloat *c);
void (float *s, float *c, const float *x, const int *n);
void (double *s, double *c, const double *x, const int *n);

cos(3), sin(3), tan(3), math(3)

December 15, 2012 macOS 14.6