Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > A


HP-UX 11i Version 3: February 2007

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index


acos(), acosf(), acosl(), acosw(), acosq() — arccosine functions


#include <math.h>

double acos(double x);

float acosf(float x);

HP Integrity Server Only

long double acosl(long double x);

extended acosw(extended x);

quad acosq(quad x);


acos() returns the arccosine of x, in the range 0 to π.

acosf() is a float version of acos(); it takes a float argument and returns a float result.

Integrity Server Only

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

acosw() is an extended version of acos(); it takes an extended argument and returns an extended result.

acosq() is equivalent to acosl() on HP-UX systems.


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

To use (for Integrity servers) acosw() or acosq(), 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 for HP Integrity servers at the following site: http://www.hp.com/go/fp.

PA-RISC System Only

Millicode versions of the acos() and acosf() 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 values described in the RETURN VALUE section, but do not set errno.


acos() returns +0.

If the magnitude of x is greater than one, acos() returns NaN and raises the invalid exception.

If x is NaN, acos() returns NaN.

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


If the magnitude of x is greater than one, acos() sets errno to [EDOM].

Integrity Server Only

HP-UX libm functions on Integrity server do not set errno by default. For errno setting, compile with the +Olibmerrno option.


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

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

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.