pow | Programming Place Plus C言語編 標準ライブラリのリファレンス

トップページC言語編標準ライブラリのリファレンス(名前順)

トップページC言語編標準ライブラリのリファレンス(ヘッダ別)


pow関数

概要

x の y乗を求める。

ヘッダ

math.h

形式

double pow(double x, double y);

引数

x

底。

y

指数。

戻り値

x を y乗した結果。

結果が、オーバーフローやアンダーフローを起こす場合には、HUGE_VAL を正しい符号で表現した値が返される。

詳細

「x が 負数で、y が整数でない場合」には定義域エラーになる。その際の動作に関する詳細は、EDOMmath_errhandling を参照のこと。「x が 0 で、y が 0以下の場合」にも定義域エラーになることがある。
また、結果がオーバーフローやアンダーフローを起こす場合には、値域エラーが発生することがある。その際の動作に関する詳細は、ERANGEmath_errhandling を参照のこと。

注意

使用例

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <errno.h>

int main(void)
{
    double x = 8.5;
    double y = 5.0;

    errno = 0;
    double ans = pow(x, y);
    if (errno != 0) {
        perror(NULL);
        exit(EXIT_FAILURE);
    }

    printf("ans = %lf\n", ans);
}

実行結果:

ans = 44370.531250

関連

float型版の powf関数、long double型版の powl関数がある。
平方根の計算には、sqrt関数が使える。

解説章

第48章


参考リンク


更新履歴

’2018/4/21 「注意」の内容を「詳細」へ移動。C99以降で事情が変わっているので、定義域エラーや値域エラーに関する説明を他ページに譲るようにした。

’2018/4/12 「戻り値」と「注意」を書きなおした。

’2018/1/22 新規作成。



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る