hypot、hypotf、hypotl、_hypot、_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
);

参数

  • x, y
    浮点值

返回值

如果成功,hypot 返回根个字符串的长度;在溢出,hypot 返回 INF (无穷大),并且 errno 变量设置为 ERANGE。 可以使用 _matherr 修改错误处理。

有关返回代码的详细信息,请参见 errno、_doserrno、_sys_errlist 和 _sys_nerr

备注

hypot 函数求值直角三角形的长度,给出的两边为 x 和 y (换言之,根的长度 x2 + y2)。

这个会导致下划线的函数已经提供与以前标准具有兼容性的版本了。 它们的行为与没有前导下划线的版本相同。 建议使用版本,而不会导致下划线的新代码。

要求

例程

必需的标头

hypot, hypotf, hypotl, _hypot, _hypotf, _hypotl

<math.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 ) );
}
  

.NET Framework 等效项

不适用。若要调用标准 C 函数,请使用 PInvoke。有关更多信息,请参见平台调用示例

请参见

参考

浮点支持

_cabs

_matherr