Teilen über


sqrt, sqrtf, sqrtl

Berechnet die Quadratwurzel.

Syntax

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

Parameter

x
Nicht negativer Gleitkommawert

Hinweise

Da C++ das Überladen zulässt, können Sie Überladungen von sqrt aufrufen, die float oder long double-Typen verwenden. In einem C-Programm wird diese Funktion immer verwendet und zurückgegebendouble, sqrt es sei denn, Sie verwenden das <tgmath.h> Makro, um diese Funktion aufzurufen.

Wenn Sie das <tgmath.h> sqrt() Makro verwenden, bestimmt der Typ des Arguments, welche Version der Funktion ausgewählt ist. Ausführliche Informationen finden Sie unter "Typgenerika" .

Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Informationen zum Ändern dieses Verhaltens finden Sie im Global state in the CRT.

Rückgabewert

Die sqrt-Funktion gibt die Quadratwurzel von x zurück. Wenn dies negativ ist, sqrt wird standardmäßig x eine unbestimmte Zeit NaNzurückgegeben.

Eingabe SEH-Ausnahme _matherr-Ausnahme
± QNaN, IND Keine _DOMAIN
-INF Keine _DOMAIN
x < 0 Keine _DOMAIN

Anforderungen

Funktion C-Header C++-Header
sqrt, sqrtf, sqrtl <math.h> <cmath>
sqrt-Makro <tgmath.h>

Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Beispiel

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

Siehe auch

Mathematische und Gleitkommaunterstützung
exp, expf, expl
log, logf, log10, log10f
pow, powf, powl
_CIsqrt