pow, powf, powl
Calcola x elevato alla potenza di y.
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
);
Parametri
x
Base.y
Esponente.
Valore restituito
Restituisce il valore di xy. Nessun messaggio di errore viene visualizzato in caso di overflow o underflow.
Valori x e y |
Valore restituito della potenza |
---|---|
x < > 0 e y = 0.0 |
1 |
x = 0.0 e y = 0.0 |
1 |
x = 0.0 e y < 0 |
INF |
Note
pow non riconosce valori a virgola mobile integrali maggiori di 264 (ad esempio, 1.0E100).
pow dispone di un'implementazione che utilizza Streaming SIMD Extensions 2 (SSE2). Per informazioni e le restrizioni sull'implementazione SSE2, vedere _set_SSE2_enable.
Poiché C++ consente l'overload, è possibile chiamare uno dei vari overload di pow. In un programma C, pow accetta sempre due valori double e restituisce un valore double.
L'overload pow(int, int) non è più disponibile. Se si utilizza questo overload, il compilatore può generare C2668. Per evitare questo problema, eseguire il cast del primo parametro a double, float, o long double.
Requisiti
Routine |
Intestazione obbligatoria |
---|---|
pow, powf, powl |
<math.h> |
Per ulteriori informazioni sulla compatibilità, vedere Compatibilità.
Librerie
Tutte le versioni delle Librerie di runtime C.
Esempio
// 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