pow man page on SmartOS

 Man page or keyword search:   man All Sections 1 - General Commands 2 - System Calls 3 - Subroutines, Functions 4 - Special Files 5 - File Formats 6 - Games and Screensavers 7 - Macros and Conventions 8 - Maintenence Commands 9 - Kernel Interface New Commands Server 4.4BSD AIX Alpinelinux Archlinux Aros BSDOS BSDi Bifrost CentOS Cygwin Darwin Debian DigitalUNIX DragonFly ElementaryOS Fedora FreeBSD Gentoo GhostBSD HP-UX Haiku Hurd IRIX Inferno JazzOS Kali Knoppix LinuxMint MacOSX Mageia Mandriva Manjaro Minix MirBSD NeXTSTEP NetBSD OPENSTEP OSF1 OpenBSD OpenDarwin OpenIndiana OpenMandriva OpenServer OpenSuSE OpenVMS Oracle PC-BSD Peanut Pidora Plan9 QNX Raspbian RedHat Scientific Slackware SmartOS Solaris SuSE SunOS Syllable Tru64 UNIXv7 Ubuntu Ultrix UnixWare Xenix YellowDog aLinux   16655 pages apropos Keyword Search (all sections) Output format html ascii pdf view pdf save postscript
[printable version]

```pow(3M)			Mathematical Library Functions		       pow(3M)

NAME
pow, powf, powl - power function

SYNOPSIS
c99 [ flag... ] file... -lm [ library... ]
#include <math.h>

double pow(double x, double y);

float powf(float x, float y);

long double powl(long double x, long double y);

cc [ flag... ] file... -lm [ library... ]
#include <math.h>

double pow(double x, double y);

float powf(float x, float y);

long double powl(long double x, long double y);

DESCRIPTION
These  functions compute the value of x raised to the power y, x^y>. If
x is negative, y must be an integer value.

RETURN VALUES
Upon successful completion, these  functions  return  the  value	 of  x
raised to the power y.

For  finite  values  of	x  <  0, and finite non-integer values of y, a
domain error occurs and either a NaN (if representable), or  an	imple‐
mentation-defined value is returned.

If  the	correct	 value	would cause overflow, a range error occurs and
pow(), powf(), and powl() return HUGE_VAL,  HUGE_VALF,  and  HUGE_VALL,
respectively.

If x or y is a NaN, a NaN is returned unless:

o	  If  x	 is  +1	 and y is NaN and the application was compiled
with the c99 compiler driver and is therefore SUSv3-conform‐
ing (see standards(5)), 1.0 is returned.

o	  For  any  value  of  x  (including  NaN), if y is +0, 1.0 is
returned.

For any odd integer value of y > 0, if x is ±0, ±0 is returned.

For y > 0 and not an odd integer, if x is ±0, +0 is returned.

If x is ±1 and y is ±Inf, and the application was compiled with the  cc
compiler driver, NaN is returned. If, however, the application was com‐
piled with the c99 compiler driver and  is  therefore  SUSv3-conforming
(seestandards(5)), 1.0 is returned.

For |x| < 1, if y is −Inf, +Inf is returned.

For |x| > 1, if y is −Inf, +0 is returned.

For |x| < 1, if y is +Inf, +0 is returned.

For |x| > 1, if y is +Inf, +Inf is returned.

For y an odd integer < 0, if x is −Inf, −0 is returned.

For y < 0 and not an odd integer, if x is −Inf, +0 is returned.

For y an odd integer > 0, if x is −Inf, −Inf is returned.

For y > 0 and not an odd integer, if x is −Inf, +Inf is returned.

For y < 0, if x is +Inf, +0 is returned.

For y > 0, if x is +Inf, +Inf is returned.

For  y  an  odd	integer	 <  0,	if  x  is  ±0, a pole error occurs and
±HUGE_VAL, ±HUGE_VALF, and ±HUGE_VALL are returned for  pow(),  powf(),
and powl(), respectively.

For  y  < 0 and not an odd integer, if x is ±0, a pole error occurs and
HUGE_VAL, HUGE_VALF, and HUGE_VALL are returned for pow(), powf(),  and
powl(), respectively.

For  exceptional cases, matherr(3M) tabulates the values to be returned
by pow() as specified by SVID3 and XPG3.

ERRORS
These functions will fail if:

Domain Error    The value of x is negative and y is a finite  non-inte‐
ger.

If   the	  integer   expression	 (math_errhandling   &
MATH_ERREXCEPT) is non-zero, the invalid floating-point
exception is raised.

The pow() function sets errno to EDOM if the value of x
is negative and y is non-integral.

Pole Error      The value of x is 0 and y is negative.

If   the	  integer   expression	 (math_errhandling   &
MATH_ERREXCEPT)	is non-zero, the divide-by-zero float‐
ing-point exception is raised.

Range Error     The result overflows.

If   the	  integer   expression	 (math_errhandling   &
MATH_ERREXCEPT)	is  non-zero,  the  overflow floating-
point exception is raised.

The pow() function sets errno to EDOM if the  value  to
be returned would cause overflow.

USAGE
An  application	wanting to check for exceptions should call feclearex‐
cept(FE_ALL_EXCEPT) before  calling  these  functions.  On  return,  if
fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is
non-zero, an exception has been raised. An  application	should	either
examine the return value or check the floating point exception flags to
detect exceptions.

An application can also set errno to 0 before calling pow(). On return,
if  errno  is  non-zero,	 an  error has occurred. The powf() and powl()
functions do not set errno.

ATTRIBUTES
See attributes(5) for descriptions of the following attributes:

┌─────────────────────────────┬─────────────────────────────┐
│      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability	     │Standard			   │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level		     │MT-Safe			   │
└─────────────────────────────┴─────────────────────────────┘

matherr(3M), attributes(5), standards(5)

NOTES
Prior  to Solaris 2.6,  there was a conflict between the pow() function
in this library and the pow() function in the libmp library. This  con‐
flict  was  resolved  by	 prepending  mp_ to all functions in the libmp

SunOS 5.11			  12 Jul 2006			       pow(3M)
```
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.