hypot
, hypotf
, hypotl
, _hypot
, , _hypotf
_hypotl
Vypočítá hypotenuse.
Syntaxe
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
Parametry
x
, y
Hodnoty s plovoucí desetinou čárkou.
Vrácená hodnota
V případě úspěchu hypot
vrátí délku hypotenuse; při přetečení hypot
vrátí INF (nekonečno) a errno
proměnná je nastavena na ERANGE
. Můžete použít _matherr
ke změně zpracování chyb.
Další informace o návratových kódech naleznete v tématu errno
, _doserrno
, _sys_errlist
a _sys_nerr
.
Poznámky
Funkce hypot
vypočítají délku hypotenuse pravého trojúhelníku vzhledem k délce dvou stran x
a y
(jinými slovy druhou odmocninux
2 + y
2).
Verze funkcí, které mají úvodní podtržítka, jsou k dispozici kvůli kompatibilitě s dřívějšími standardy. Jejich chování je identické s verzemi, které nemají úvodní podtržítka. Pro nový kód doporučujeme používat verze bez úvodních podtržítka.
Pokud použijete <makro tgmath.h>hypot()
, 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.
Požadavky
Rutina | Požadovaný hlavičkový soubor |
---|---|
hypot , hypotf , hypotl , _hypot , , _hypotf _hypotl |
<math.h> |
hypot makro |
<tgmath.h> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Příklad
// 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
Viz také
Podpora pro matematiku a plovoucí desetinou čárku
_cabs
_matherr