pow,powl
math.h:インデックス への移動
ヘッダーファイル
math.h
カテゴリ
演算ルーチン
プロトタイプ
double pow(double x, double y);
long double powl(long double x, long double y);
説明
x の y 乗を計算します。
powl は long double バージョンです。long double 引数を受け取り,long double の結果を返します。
戻り値
成功した場合,pow および powl は,x の y 乗を計算した値を返します。
これらの関数に渡される引数は,オーバーフローまたは計算不能な結果を生成する場合があります。正しい値がオーバーフローになった場合,これらの関数は,HUGE_VAL(pow)または _LHUGE_VAL(powl)を返します。結果が大きすぎる場合は,グローバル変数 errno が次の値に設定されます。
ERANGE |
結果が範囲外です。 |
pow または powl に渡された引数 x が 0 より小さな実数で,y が整数でない場合,x が 0 で,y が 0 より小さな場合,または pow(0,0) を呼び出した場合は,グローバル変数 errno が次の値に設定されます。
EDOM |
定義域エラーです。 |
これらの関数のエラー処理は,_matherr および _matherrl 関数を使って変更できます。
例
#include <math.h>
#include <stdio.h>
int main(void)
{
double x = 2.0, y = 3.0;
printf("%lf raised to %lf is %lf\n", x, y, pow(x, y));
return 0;
}
移植性
POSIX | Win32 | ANSI C | ANSI C++ | |
---|---|---|---|---|
pow |
+ |
+ |
+ |
+ |
powl |
+ |
+ |
+ |