pow
, powf
, powl
Calcula x
elevado à potência de y
.
Sintaxe
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
Expoente.
Retornar valor
Retorna o valor de x
y
. Nenhuma mensagem de erro é impressa em estouro ou estouro negativo.
Valores de x e y |
Valor de retorno de pow |
---|---|
x != 0,0 e y == 0,0 |
1 |
x == 0.0 e y == 0.0 |
1 |
x == 0.0 e y < 0 |
INF |
Comentários
pow
não reconhece valores integrais de ponto flutuante maiores que 264 (por exemplo, 1,0E100).
pow
tem uma implementação que usa SSE2 (Extensões SIMD de Streaming 2). Para obter informações e restrições relativas ao uso da implementação de SSE2, confira _set_SSE2_enable
.
Como C++ permite sobrecargas, você pode chamar qualquer uma das várias sobrecargas de pow
. Em um programa do C, a menos que você esteja usando a macro <tgmath.h>
para chamar essa função, pow
sempre receberá dois valores double
e retornará um valor double
.
Se você usar a pow
macro de <tgmath.h>
, o tipo do argumento determinará qual versão da função será selecionada. Confira Matemática do tipo genérico para obter detalhes.
A sobrecarga pow(int, int)
não está mais disponível. Se você usar essa sobrecarga, o compilador poderá emitir o C2668. Para evitar esse problema, converta o primeiro parâmetro para double
, float
ou long double
.
Originalmente, as pow(T, int)
sobrecargas desenrolavam a pow
chamada em uma sequência de operações de multiplicação embutidas. Embora fosse mais rápido, também era muito menos preciso. Essa implementação foi removida no Visual Studio 2015 Atualização 1. Para obter mais informações, consulte Aprimoramentos de conformidade no Visual Studio 2015 Atualização 1.
Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, consulte Estado global na CRT.
Requisitos
Rotina | Cabeçalho necessário (C) | Cabeçalho necessário (C++) |
---|---|---|
pow , powf , powl |
<math.h> |
<math.h> ou <cmath> |
Macro pow |
<tgmath.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
// 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
Confira também
Suporte a matemática e ponto flutuante
exp
, expf
, expl
log
, logf
, log10
, log10f
sqrt
, sqrtf
, sqrtl
_CIpow
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de