Freigeben über


sqrt, sqrtfsqrtl

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 Typgengenerische Mathematik.

Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der 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, sqrtfsqrtl <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 Unterstützung und Gleitkommaunterstützung
exp, expfexpl
log, , logflog10log10f
pow, powfpowl
_CIsqrt