The pow functions - pow, powf, powl

べき乗を計算します.

pow

#include <math.h>
double pow (
    double x,
    double y
);

pow 関数は x の y 乗を計算し,結果を double 型で返します.

powf (C99)

#include <math.h>
float powf (
    float x,
    float y
);

powf 関数は x の y 乗を計算し,結果を float 型で返します.

powl (C99)

#include <math.h>
long double powl (
    long double x,
    long double y
);

powl 関数は x の y 乗を計算し,結果を long double 型で返します.

pow,powf,powl 関数は x が有限な負の数かつ y が有限で整数値でない場合に定義域エラー (domain error) が発生します.また,x が 0 で, かつ y が 0 以下の場合に定義域エラーが発生することがあります.

戻り値

  • x^y

数学上の表記

pow

C言語サンプルプログラム

以下に pow,powf,powl 関数それぞれを使用したサンプルプログラムを示します.

/* header files */
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

/* main */
int main(void) {
    double d = 5.0, d_result;
    float f = 5.0, f_result;
    long double ld = 5.0L, ld_result;

    d_result = pow(d, 3.0);
    f_result = powf(f, 3.0);
    ld_result = powl(ld, 3.0L);

    printf("pow: %.1f\n", d_result);
    printf("powf: %.1f\n", f_result);
    printf("powl: %.1Lf\n", ld_result);

    return EXIT_SUCCESS;
}

実行例

サンプルプログラムの実行結果は以下のようになります.

pow: 125.0
powf: 125.0
powl: 125.0