pow, powf, powl

Calcula el valor de x elevado a la potencia de y.

Sintaxis

double pow( double x, double y );
float powf( float x, float y );
long double powl( long double x, long double y );
define pow(X, Y) // Requires C11 or higher

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

Parámetros

x
Base.

y
Exponente.

Valor devuelto

Devuelve el valor de xy. No se imprime ningún mensaje de error en caso de desbordamiento o subdesbordamiento.

Valores de x y y Valor devuelto de pow
x != 0,0 y y == 0,0 1
x == 0,0 y y == 0,0 1
x == 0,0 y y< 0 INF

Comentarios

pow no reconoce valores enteros de punto flotante mayores que 264 (por ejemplo, 1.0E100).

pow tiene una implementación que usa las Extensiones SIMD de transmisión por secuencias 2 (SSE2). Para obtener información y las restricciones sobre el uso de la implementación de SSE2, vea _set_SSE2_enable.

Como C++ admite sobrecargas, se puede llamar a cualquiera de las sobrecargas de pow. En un programa de C, a menos que use la macro <tgmath.h> para llamar a esta función, pow siempre toma dos valores double y devuelve un valor double.

Si usa la pow macro de <tgmath.h>, el tipo del argumento determina qué versión de la función está seleccionada. Consulte Matemáticas de tipo genérico para obtener más información.

La sobrecarga de pow(int, int) ya no está disponible. Si usa esta sobrecarga, el compilador puede emitir C2668. Para evitar este problema, convierta el primer parámetro en double, float o long double.

Originalmente, las pow(T, int) sobrecargas anulan la pow llamada a una secuencia de operaciones de multiplicación insertadas. Aunque era más rápido, también era mucho menos preciso. Esta implementación se quitó en Visual Studio 2015 Update 1. Para obtener más información, vea Mejoras de conformidad en Visual Studio 2015 Update 1.

De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.

Requisitos

Routine Encabezado necesario (C) Encabezado necesario (C++)
pow, powf, powl <math.h> <math.h> o <cmath>
powMacro <tgmath.h>

Para obtener más información sobre compatibilidad, consulte Compatibilidad.

Ejemplo

// 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 );
}
2.0 to the power of 3.0 is 8.0

Consulte también

Compatibilidad con matemáticas y punto flotante
exp, expf, expl
log, logf, log10, log10f
sqrt, sqrtf, sqrtl
_CIpow