C++ 标准库 - <cmath>

C++ std::hypot(x, y) 计算 sqrt(x² + y²),即直角三角形斜边长度。实现会尽量避免中间平方溢出,因此优于手工写 sqrt(x * x + y * y)。C++17 起还有三参数重载。

原型

double hypot(double x, double y);

参数

  • x, y:直角边。

返回值

欧氏范数 sqrt(x² + y²),非负。

示例

#include <cmath>
#include <iostream>

int main() {
    std::cout << std::hypot(3.0, 4.0) << std::endl;
    return 0;
}

输出:

5

注意事项

二维距离、复数模长常用 hypot。下一组为反三角函数。

下一页介绍asin:反正弦。