pow
, powf
, powl
x
の y
乗を計算します。
構文
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
パラメーター
x
底。
y
指数。
戻り値
x
y
の値を返します。 オーバーフローまたはアンダーフロー時に、エラー メッセージは印刷されません。
の x 値と y |
の戻り値 pow |
---|---|
x != 0.0 および y == 0.0 |
1 |
x == 0.0 および y == 0.0 |
1 |
x == 0.0 および y < 0 |
INF |
解説
pow
は、264 (1.0E100 など) を超える整数浮動小数点値を認識しません。
pow
には、ストリーミング SIMD 拡張機能 (SSE2) を使用して実装されています。 SSE2 実装の使い方の詳細および制約については、「_set_SSE2_enable
」を参照してください。
C++ ではオーバーロードが可能であるため、pow
のさまざまなオーバーロードを呼び出すことができます。 C プログラムでは、<tgmath.h>
マクロを使用してこの関数を呼び出す場合を除き、pow
では常に 2 つの double
の値を受け取って double
の値を返します。
マクロを<tgmath.h>
使用するpow
場合は、引数の型によって、どのバージョンの関数が選択されているかが決まります。 詳細については、「ジェネリック型数値演算」を参照してください。
pow(int, int)
オーバーロードは使用できなくなりました。 このオーバーロードを使用すると、コンパイラは C2668 を生じさせる場合があります。 この問題を回避するには、最初のパラメーターを double
、float
、または long double
にキャストします。
もともと、オーバーロードは pow(T, int)
呼び出しを pow
インライン乗算操作のシーケンスに展開しました。 より高速ですが、精度も大幅に低下しました。 この実装は、Visual Studio 2015 Update 1 で削除されました。 詳細については、「Visual Studio 2015 Update 1 の準拠の機能強化」を参照してください。
既定では、この関数のグローバル状態の適用対象は、アプリケーションになります。 この動作を変更するには、「CRT のグローバル状態」を参照してください。
必要条件
ルーチンによって返される値 | 必須ヘッダー (C) | 必須ヘッダー (C++) |
---|---|---|
pow , powf , powl |
<math.h> |
<math.h> または <cmath> |
pow マクロ |
<tgmath.h> |
互換性の詳細については、「 Compatibility」を参照してください。
例
// 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
関連項目
数学と浮動小数点のサポート
exp
, expf
, expl
log
, logf
, log10
, log10f
sqrt
, sqrtf
, sqrtl
_CIpow
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示