Share via


pow, powf, powl

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at pow, powf, powl.

Calculates x raised to the power of y.

Syntax

double pow(  
   double x,  
   double y   
);  
double pow(  
   double x,  
   int y  
);  // C++ only  
float pow(  
   float x,  
   float y   
);  // C++ only  
float pow(  
   float x,  
   int y  
);  // C++ only  
long double pow(  
   long double x,  
   long double y  
);  // C++ only  
long double pow(  
   long double x,  
   int y  
);  // C++ only  
float powf(  
   float x,  
   float y   
);  
long double powl(  
   long double x,  
   long double y  
);  

Parameters

x
Base.

y
Exponent.

Return Value

Returns the value of xy. No error message is printed on overflow or underflow.

Values of x and y Return value of pow
x < > 0 and y = 0.0 1
x = 0.0 and y = 0.0 1
x = 0.0 and y < 0 INF

Remarks

pow does not recognize integral floating-point values greater than 264 (for example, 1.0E100).

pow has an implementation that uses Streaming SIMD Extensions 2 (SSE2). For information and restrictions about using the SSE2 implementation, see _set_SSE2_enable.

Because C++ allows overloading, you can call any of the various overloads of pow. In a C program, pow always takes two double values and returns a double value.

The pow(int, int) overload is no longer available. If you use this overload, the compiler may emit C2668. To avoid this problem, cast the first parameter to double, float, or long double.

Requirements

Routine Required header
pow, powf, powl <math.h>

For additional compatibility information, see Compatibility.

Libraries

All versions of the C run-time libraries.

Example

// crt_pow.c  
  
#include <math.h>  
#include <stdio.h>  
  
int main( void )  
{  
   double x = 2.0, y = 3.0, z;  
  
   z = pow( x, y );  
   printf( "%.1f to the power of %.1f is %.1f\n", x, y, z );  
}  

Output

2.0 to the power of 3.0 is 8.0  

.NET Framework Equivalent

System::Math::Pow

See Also

Floating-Point Support
exp, expf
log, logf, log10, log10f
sqrt, sqrtf, sqrtl
_CIpow