Aracılığıyla paylaş


pow, powf, powl

x'nin gücüne yükseltilen değeri yhesaplar.

Sözdizimi

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

Parametreler

x
Temel.

y
Üs.

Dönüş değeri

değerini xydöndürür. Taşma veya yetersizlik üzerine hiçbir hata iletisi yazdırılmaz.

ve değerleri xy Dönüş değeri: pow
x != 0,0 ve y == 0,0 Kategori 1
x == 0,0 ve y == 0,0 Kategori 1
x == 0,0 ve y< 0 INF

Açıklamalar

pow 264'ten büyük tamser kayan nokta değerlerini tanımaz (örneğin, 1,0E100).

pow , Streaming SIMD Extensions 2 (SSE2) kullanan bir uygulamaya sahiptir. SSE2 uygulamasını kullanma hakkında bilgi ve kısıtlamalar için bkz _set_SSE2_enable. .

C++ aşırı yüklemeye izin verdiğinden, çeşitli aşırı yüklemelerinden powherhangi birini çağırabilirsiniz. C programında, bu işlevi çağırmak için makroyu kullanmadığınız <tgmath.h> sürece her pow zaman iki double değer alır ve bir double değer döndürür.

öğesinden pow<tgmath.h>makro kullanırsanız, işlevin hangi sürümünün seçili olduğunu bağımsız değişkenin türü belirler. Ayrıntılar için bkz . Tür genel matematik .

Aşırı pow(int, int) yükleme artık kullanılamıyor. Bu aşırı yüklemeyi kullanırsanız, derleyici C2668 yayabilir. Bu sorunu önlemek için, ilk parametreyi double, floatveya long doubleolarak yazın.

Başlangıçta aşırı pow(T, int) yüklemeler, çağrının pow kaydını bir satır içi çarpma işlemleri dizisine kaldırmıştı. Daha hızlı olsa da çok daha az doğruydu. Bu uygulama Visual Studio 2015 Güncelleştirme 1'de kaldırıldı. Daha fazla bilgi için bkz . Visual Studio 2015 Güncelleştirme 1'de uyumluluk geliştirmeleri.

Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.

Gereksinimler

Yordam Gerekli üst bilgi (C) Gerekli üst bilgi (C++)
pow, powf, powl <math.h> <math.h> veya <cmath>
pow Makro <tgmath.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Örnek

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

Ayrıca bkz.

Matematik ve kayan nokta desteği
exp, expf, expl
log, logf, log10, log10f
sqrt, sqrtf, sqrtl
_CIpow