Sdílet prostřednictvím


sqrt, , sqrtfsqrtl

Vypočítá druhou odmocninu.

Syntaxe

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
Nezáporná hodnota s plovoucí desetinnou čárkou

Poznámky

Vzhledem k tomu, že jazyk C++ umožňuje přetížení, můžete volat přetížení těchto sqrt převzetí float nebo long double typů. V programu jazyka C, pokud k volání této funkce nepoužíváte <tgmath.h> makro, sqrt vždy přebírá a vrací .double

Pokud použijete <tgmath.h> sqrt() makro, typ argumentu určuje, která verze funkce je vybrána. Podrobnosti najdete v tématu Matematika pro obecné typy.

Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.

Vrácená hodnota

Funkce sqrt vrátí druhou odmocninu x. Pokud je záporná, x sqrt vrátí ve výchozím nastavení neomezenou hodnotu NaN.

Vstup Výjimka SEH Výjimka _matherr
± QNaN, IND Žádná _DOMAIN
-INF Žádná _DOMAIN
x < 0 Žádná _DOMAIN

Požadavky

Function Záhlaví jazyka C Hlavička jazyka C++
sqrt, , sqrtfsqrtl <math.h> <cmath>
sqrt makro <tgmath.h>

Informace o kompatibilitě najdete v tématu Kompatibilita.

Příklad

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

Viz také

Podpora pro matematiku a plovoucí desetinou čárku
exp, , expfexpl
log, logf, , log10log10f
pow, , powfpowl
_CIsqrt