POW(3)

NAME
pow - power function

SYNOPSIS
#include <math.h>
double
pow(double x, double y);
long double
powl(long double x, long double y);
float
powf(float x, float y);

DESCRIPTION
The pow() functions compute x raised to the power y.

SPECIAL VALUES
pow(±0, y) returns ±infinity and raises the "divide-by-zero" floating-point exception for y an odd integer < 0.

pow(±0, y) returns +infinity and raises the "divide-by-zero" floating-point exception for y < 0 and not an odd integer.

pow(±0, y) returns ±0 for y an odd integer > 0.

pow(±0, y) returns +0 for y > 0 and not an odd integer.

pow(-1, ±infinity) returns 1.

pow(1, y) returns 1 for any y, even a NaN.

pow(x, ±0) returns 1 for any x, even a NaN.

pow(x, y) returns a NaN and raises the "invalid" floating-point exception for finite x < 0 and finite non-integer y.

pow(x, -infinity) returns +infinity for |x| < 1.

pow(x, -infinity) returns +0 for |x| > 1.

pow(x, +infinity) returns +0 for |x| < 1.

pow(x, +infinity) returns +infinity for |x| > 1.

pow(-infinity, y) returns -0 for y an odd integer < 0.

pow(-infinity, y) returns +0 for y < 0 and not an odd integer.

pow(-infinity, y) returns -infinity for y an odd integer > 0.

pow(-infinity, y) returns +infinity for y > 0 and not an odd integer.

pow(+infinity, y) returns +0 for y < 0.

pow(+infinity, y) returns +infinity for y > 0.

A domain error occurs if x is finite and negative and y is finite and not an integer.

A domain error can occur if x is 0 and y less than or equal to 0.

Range errors may occur.

SEE ALSO
math(3)

STANDARDS
The pow() function conforms to ISO/IEC 9899:1999(E).