HPlogo HP-UX Reference > S

sin(3M)

HP-UX 11i Version 2: December 2007 Update
» 

Technical documentation

 » Table of Contents

 » Index

NAME

sin(), sinf(), sinl(), sinw(), sinq() — sine functions

SYNOPSIS

#include <math.h>

double sin(double x);

float sinf(float x);

Itanium(R)-based System Only

long double sinl(long double x);

extended sinw(extended x);

quad sinq(quad x);

DESCRIPTION

sin() returns the sine of x (x specified in radians).

On PA-RISC systems, sin() may lose accuracy when x is far from zero.

sinf() is a float version of sin(); it takes a float argument and returns a float result.

Itanium-based System Only

sinl() is a long double version of sin(); it takes a long double argument and returns a long double result.

sinw() is an extended version of sin(); it takes an extended argument and returns an extended result.

sinq() is equivalent to sinl() on HP-UX systems.

USAGE

To use these functions compile either with the default -Ae option or with the -Aa and the -D_HPUX_SOURCE options.

To use (for Itanium-based systems) sinw() or sinq(), compile also with the -fpwidetypes option.

To use any of these functions, make sure your program includes <math.h>, and link in the math library by specifying -lm on the compiler or linker command line. For more information, see the HP-UX Floating-Point Guide.

PA-RISC Only

Millicode versions of the sin() and sinf() functions are available. Millicode versions of math library functions are usually faster than their counterparts in the standard library. To use these versions, compile your program with the +Olibcalls or the +Oaggressive optimization option.

For special cases, the millicode versions return the same values as their standard library counterparts (see the RETURN VALUE section).

RETURN VALUE

sin(±0) returns ±0.

If x is ±INFINITY, sin() returns NaN and raises the invalid exception.

If x is NaN, sin() returns NaN.

When it raises no other exception, whether sin() raises the inexact exception is unspecified.

ERRORS

No errors are defined.

STANDARDS CONFORMANCE

sin() : SVID3, XPG4.2, ANSI C, ISO/IEC C99 (including Annex F, ``IEC 60559 floating-point arithmetic'')

sinf(), sinl() : ISO/IEC C99 (including Annex F, ``IEC 60559 floating-point arithmetic'')