平方根を計算します。
構文
double sqrt(
double x
);
float sqrt(
float x
); // C++ only
long double sqrt(
long double x
); // C++ only
float sqrtf(
float x
);
long double sqrtl(
long double x
);
#define sqrt(x) // Requires C11 or later
パラメーター
x
負でない浮動小数点値
解説
C++ ではオーバーロードが可能であるため、sqrt または float 型を受け取る long double のオーバーロードを呼び出すことができます。 C プログラムでは、この関数を呼び出すために <tgmath.h> マクロが使用されていない限り、sqrt は常に double を受け取って返します。
<tgmath.h> sqrt() マクロを使用する場合は、引数の型によって、選択される関数のバージョンが決定されます。 詳細については、「ジェネリック型数値演算」を参照してください。
既定では、この関数のグローバル状態の適用対象は、アプリケーションになります。 この動作を変更するには、「CRT でのグローバル状態」を参照してください。
戻り値
sqrt 関数は、x の平方根を返します。 既定では、x が負の場合、sqrt は不定値 NaN を返します。
| 入力 | SEH 例外 | _matherr 例外 |
|---|---|---|
| ± QNaN、IND | なし | _DOMAIN |
| - INF | なし | _DOMAIN |
x < 0 |
なし | _DOMAIN |
要件
| 機能 | C ヘッダー | C++ ヘッダー |
|---|---|---|
sqrt、 sqrtf、 sqrtl |
<math.h> |
<cmath> |
sqrt マクロ |
<tgmath.h> |
互換性の詳細については、「互換性」を参照してください。
例
// crt_sqrt.c
// This program calculates a square root.
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
int main( void )
{
double question = 45.35, answer;
answer = sqrt( question );
if( question < 0 )
printf( "Error: sqrt returns %f\n", answer );
else
printf( "The square root of %.2f is %.2f\n", question, answer );
}
The square root of 45.35 is 6.73
関連項目
数値演算と浮動小数点のサポート
exp、 expf、 expl
log、 logf、 log10、 log10f
pow、 powf、 powl
_CIsqrt