hypot
, , hypotf
_hypot
hypotl
_hypotf
,_hypotl
Вычисляет гипотенузу.
Синтаксис
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
Параметры
x
, y
Значения с плавающей запятой.
Возвращаемое значение
В случае успешного выполнения hypot
возвращает длину гипотенузы. При переполнении hypot
возвращает INF (бесконечность), а параметру errno
присваивается значение ERANGE
. Изменить способ обработки ошибок можно с помощью _matherr
.
Дополнительные сведения о кодах возврата см. в разделе errno
, _doserrno
_sys_errlist
и _sys_nerr
.
Замечания
Функция hypot
рассчитывает длину гипотенузы прямоугольного треугольника на основе длины двух других сторон (x
и y
). Другими словами, эта функция вычисляет квадратный корень из выражения x
2 + y
2.
Для совместимости с более ранними стандартами используются версии функций с символом подчеркивания в начале. Их поведение идентично поведению версий, которые не имеют таких символов. В новом коде рекомендуется использовать версии без символов подчеркивания.
Если вы используете <макрос tgmath.h>hypot()
, тип аргумента определяет, какая версия функции выбрана. Дополнительные сведения см . в разделе "Математика с универсальным типом".
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Требования
Маршрут | Обязательный заголовок |
---|---|
hypot , , hypotf _hypot hypotl _hypotf ,_hypotl |
<math.h> |
hypot Макрос |
<tgmath.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Пример
// 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