Freigeben über


hypot, , hypotfhypotl, _hypot, , _hypotf_hypotl

Berechnet die Hypotenuse.

Syntax

double hypot(
   double x,
   double y
);
float hypotf(
   float x,
   float y
);
long double hypotl(
   long double x,
   long double y
);
double _hypot(
   double x,
   double y
);
float _hypotf(
   float x,
   float y
);
long double _hypotl(
   long double x,
   long double y
);
#define hypotf(X, Y) // Requires C11 or higher

Parameter

x, y
Gleitkommawerte.

Rückgabewert

Bei Erfolg gibt hypot die Länge der Hypotenuse zurück; bei Überlauf gibt hypot INF (Unendlichkeit) zurück und die errno-Variable ist auf ERANGE festgelegt. Sie können _matherr verwenden, um die Fehlerbehandlung zu ändern.

Weitere Informationen zu Rückgabecodes finden Sie unter , , _doserrno, _sys_errlistund _sys_nerr.errno

Hinweise

Die hypot-Funktionen berechnen die Länge der Hypotenuse eines rechtwinkligen Dreiecks unter Verwendung der Länge der beiden Seiten x und y (d.h. die Quadratwurzel von x2 + y2).

Die Versionen der Funktionen mit führenden Unterstrichen unterstützen die Kompatibilität mit früheren Standards. Ihr Verhalten ist mit den Versionen identisch, die keine führende Unterstriche haben. Es empfiehlt sich, die Versionen ohne führende Unterstriche für neuen Code zu verwenden.

Wenn Sie das Makro <tgmath.h>hypot() 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.

Anforderungen

Routine Erforderlicher Header
hypot, , hypotfhypotl, _hypot, , _hypotf_hypotl <math.h>
hypot-Makro <tgmath.h>

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

Beispiel

// crt_hypot.c
// This program prints the hypotenuse of a right triangle.

#include <math.h>
#include <stdio.h>

int main( void )
{
   double x = 3.0, y = 4.0;

   printf( "If a right triangle has sides %2.1f and %2.1f, "
           "its hypotenuse is %2.1f\n", x, y, _hypot( x, y ) );
}
If a right triangle has sides 3.0 and 4.0, its hypotenuse is 5.0

Siehe auch

Mathematische Unterstützung und Gleitkommaunterstützung
_cabs
_matherr