Udostępnij przez


sqrt, sqrtf, sqrtl

Oblicza pierwiastek kwadratowy.

Składnia

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 higher

Parametry

x
Wartość zmiennoprzecinkowa nieujemna

Uwagi

Ponieważ język C++ umożliwia przeciążenie, można wywołać przeciążenia sqrt tego typu float lub long double typu. W programie języka C, chyba że używasz makra <tgmath.h> do wywoływania tej funkcji, sqrt zawsze przyjmuje i zwraca wartość double.

Jeśli używasz makra <tgmath.h> sqrt() , typ argumentu określa, która wersja funkcji jest zaznaczona. Aby uzyskać szczegółowe informacje, zobacz Typy ogólne matematyczne .

Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.

Wartość zwracana

Funkcje sqrt zwracają pierwiastek kwadratowy elementu x. Domyślnie, jeśli x jest ujemny, sqrt zwraca nieokreślony NaN.

Dane wejściowe Wyjątek SEH Wyjątek _matherr
± QNaN, IND Brak _DOMAIN
-INF Brak _DOMAIN
x < 0 Brak _DOMAIN

Wymagania

Function Nagłówek języka C Nagłówek języka C++
sqrt, sqrtf, sqrtl <math.h> <cmath>
sqrt Makro <tgmath.h>

Aby uzyskać informacje o zgodności, zobacz Zgodność.

Przykład

// 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

Zobacz też

Obsługa obliczeń matematycznych i zmiennoprzecinkowych
exp, expf, expl
log, logf, log10, log10f
pow, powf, powl
_CIsqrt