These are the familiar sin
, cos
, and tan
functions.
The arguments to all of these functions are in units of radians; recall
that pi radians equals 180 degrees.
The math library normally defines M_PI
to a double
approximation of pi. If strict ISO and/or POSIX compliance
are requested this constant is not defined, but you can easily define it
yourself:
#define M_PI 3.14159265358979323846264338327
You can also compute the value of pi with the expression acos
(-1.0)
.
-1
to 1
.
-1
to 1
.
Mathematically, the tangent function has singularities at odd multiples
of pi/2. If the argument x is too close to one of these
singularities, tan
will signal overflow.
In many applications where sin
and cos
are used, the sine
and cosine of the same angle are needed at the same time. It is more
efficient to compute them simultaneously, so the library provides a
function to do that.
*sinx
and the
cosine of x in *cos
, where x is given in
radians. Both values, *sinx
and *cosx
, are in
the range of -1
to 1
.
This function is a GNU extension. Portable programs should be prepared to cope with its absence.
ISO C99 defines variants of the trig functions which work on complex numbers. The GNU C library provides these functions, but they are only useful if your compiler supports the new complex types defined by the standard. (As of this writing GCC supports complex numbers, but there are bugs in the implementation.)
@ifnottex @math{sin (z) = 1/(2*i) * (exp (z*i) - exp (-z*i))}.
@ifnottex @math{cos (z) = 1/2 * (exp (z*i) + exp (-z*i))}
@ifnottex @math{tan (z) = -i * (exp (z*i) - exp (-z*i)) / (exp (z*i) + exp (-z*i))}
The complex tangent has poles at @math{pi/2 + 2n}, where @math{n} is an
integer. ctan
may signal overflow if z is too close to a
pole.
Go to the first, previous, next, last section, table of contents.