Sdílet prostřednictvím


pow, , powfpowl

x Vypočítá umocněné na mocninu y.

Syntaxe

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

Parametry

x
Základna.

y
Exponent.

Vrácená hodnota

Vrátí hodnotu xy. Při přetečení nebo podtečení se nevytiskne žádná chybová zpráva.

Hodnoty a xy Návratová hodnota pow
x != 0,0 a y == 0,0 0
x == 0,0 a y == 0,0 0
x == 0,0 a y< 0 INF

Poznámky

pow nerozpozná celočíselné hodnoty s plovoucí desetinou čárkou větší než 264 (například 1,0E100).

pow má implementaci, která používá streamovaná rozšíření SIMD 2 (SSE2). Informace a omezení týkající se použití implementace SSE2 naleznete v tématu _set_SSE2_enable.

Vzhledem k tomu, C++ umožňuje přetížení, můžete volat libovolné z různých přetížení pow. Pokud v programu jazyka C nepoužíváte <tgmath.h> makro k volání této funkce, pow vždy přebírá dvě double hodnoty a vrací double hodnotu.

Pokud použijete pow makro z <tgmath.h>, typ argumentu určuje, která verze funkce je vybrána. Podrobnosti najdete v tématu Matematika pro obecné typy.

Přetížení pow(int, int) už není k dispozici. Pokud použijete toto přetížení, kompilátor může generovat C2668. Chcete-li se tomuto problému vyhnout, přetypujte první parametr na double, floatnebo long double.

pow(T, int) Přetížení původně rozbalila pow volání do posloupnosti vložených operací násobení. I když to bylo rychlejší, bylo to také mnohem méně přesné. Tato implementace byla odebrána v sadě Visual Studio 2015 Update 1. Další informace najdete v tématu Vylepšení shody v sadě Visual Studio 2015 Update 1.

Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.

Požadavky

Rutina Povinná hlavička (C) Povinná hlavička (C++)
pow, , powfpowl <math.h> <math.h> nebo <cmath>
pow makro <tgmath.h>

Další informace o kompatibilitě najdete v tématu Kompatibilita.

Příklad

// 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

Viz také

Podpora pro matematiku a plovoucí desetinou čárku
exp, , expfexpl
log, logf, , log10log10f
sqrt, , sqrtfsqrtl
_CIpow