hypot, hypotf, hypotl, _hypot, _hypotf, _hypotl

Calcola l'ipotenusa.

Sintassi

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

Parametri

x, y
Valori a virgola mobile.

Valore restituito

Se ha esito positivo, hypot restituisce la lunghezza dell'ipotenusa. In caso di overflow, hypot restituisce INF (infinito) e la variabile errno viene impostata su ERANGE. È possibile usare _matherr per modificare la gestione degli errori.

Per altre informazioni sui codici restituiti, vedere errno, _doserrno, _sys_errliste _sys_nerr.

Osservazioni:

Le funzioni hypot calcolano la lunghezza dell'ipotenusa di un triangolo rettangolo, data la lunghezza dei due lati x e y (in altre parole, la radice quadrata di x2 + y2).

Le versioni delle funzioni con caratteri di sottolineatura iniziali sono fornite per compatibilità con standard precedenti. Il comportamento è identico per le versioni senza caratteri di sottolineatura iniziali. È consigliabile usare le versioni senza caratteri di sottolineatura iniziali per il nuovo codice.

Se si utilizza la <macro tgmath.h>hypot() , il tipo dell'argomento determina quale versione della funzione è selezionata. Per informazioni dettagliate, vedere La matematica generica dei tipi.

Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.

Requisiti

Ciclo Intestazione obbligatoria
hypot, hypotf, hypotl, _hypot, _hypotf, _hypotl <math.h>
hypot Macro <tgmath.h>

Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Esempio

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

Vedi anche

Supporto matematico e a virgola mobile
_cabs
_matherr