當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


C語言 hypot用法及代碼示例

C語言math頭文件(math.h)中hypot函數的用法及代碼示例。

用法:

     double hypot  (double x     , double y);
      float hypotf (float x      , float y);
long double hypotl (long double x, long double y);
計算斜邊
返回斜邊直角三角形誰的腿xy

該函數返回的平方根之和的平方根xy(按照勾股定理),但不會引起中間值的不適當的上溢或下溢。

標頭<tgmath.h>提供此函數的type-generic宏版本。
額外的過載在此頭文件中提供(<cmath>)的其他組合算術類型(Type1Type2):這些重載有效地將其參數轉換為double在計算之前,除非至少有一個參數是類型long double(在這種情況下,兩者都強製轉換為long double反而)。

參數

x, y
浮點值對應於直角三角形為此計算斜邊。

返回值

這個平方根(x2+y2)
如果結果的大小太大而無法用返回類型的值表示,則該函數可能會返回HUGE_VAL(或者HUGE_VALF或者HUGE_VALL)並帶有適當的符號(在這種情況下,將發生溢出)範圍誤差發生):

如果溢出範圍誤差發生:
- 和math_errhandlingMATH_ERRNO設置:全局變量errno被設定為ERANGE
- 和math_errhandlingMATH_ERREXCEPT設置:FE_OVERFLOW被拋出

示例

/* hypot example */
#include <stdio.h>      /* printf */
#include <math.h>       /* hypot */

int main ()
{
  double leg_x, leg_y, result;
  leg_x = 3;
  leg_y = 4;
  result = hypot (leg_x, leg_y);
  printf ("%f, %f and %f form a right-angled triangle.\n",leg_x,leg_y,result);
  return 0;
}


輸出:

3.000000, 4.000000 and 5.000000 form a right-angled triangle.

相關用法


注:本文由純淨天空篩選整理自C標準庫大神的英文原創作品 C hypot function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。