Compartilhar via


hypot, hypotf, hypotl, _hypot, _hypotf, _hypotl

Calcula a hipotenusa.

Sintaxe

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

Parâmetros

x, y
Valores de ponto flutuante.

Retornar valor

Se for bem-sucedido, hypot retorna o comprimento da hipotenusa, no estouro, hypot retorna INF (infinito) e a variável errno é definida como ERANGE. Você pode usar _matherr para modificar o tratamento de erros.

Para obter mais informações sobre códigos de retorno, confira errno, _doserrno, _sys_errlist e _sys_nerr.

Comentários

As funções hypot calculam o comprimento da hipotenusa de um triângulo retângulo, dado o comprimento dos dois lados x e y (em outras palavras, a raiz quadrada de x2 + y2).

As versões das funções que têm sublinhados iniciais são fornecidas para compatibilidade com os padrões anteriores. Seu comportamento é idêntico ao das versões que não têm sublinhados iniciais. É recomendável usar as versões sem sublinhados iniciais para o novo código.

Se você usa a macro <tgmath.h>hypot(), o tipo do argumento determina qual versão da função será selecionada. Confira Matemática do tipo genérico para obter detalhes.

Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, consulte Estado global na CRT.

Requisitos

Rotina Cabeçalho necessário
hypot, hypotf, hypotl, _hypot, _hypotf, _hypotl <matemática.h>
Macro hypot <tgmath.h>

Para obter informações sobre compatibilidade, consulte Compatibilidade.

Exemplo

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

Confira também

Suporte a matemática e ponto flutuante
_cabs
_matherr