std::hypot

来自cppreference.com
< cpp‎ | numeric‎ | math

 
 
Numerics的图书馆
常见的数学函数
浮点环境
复数
数字阵列
伪随机数生成
编译时合理的算法 (C++11)
通用的数值运算
原文:
Generic numeric operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
iota(C++11)
accumulate
inner_product
adjacent_difference
partial_sum
 
常见的数学函数
功能
原文:
Functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
基本操作
原文:
Basic operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
remainder(C++11)
remquo(C++11)
fma(C++11)
fmax(C++11)
fmin(C++11)
fdim(C++11)
nan
nanf
nanl
(C++11)
(C++11)
(C++11)
指数函数
原文:
Exponential functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
exp
exp2(C++11)
expm1(C++11)
log
log10
log1p(C++11)
log2(C++11)
电源的功能
原文:
Power functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
sqrt
cbrt(C++11)
hypot(C++11)
pow
三角函数和双曲功能
原文:
Trigonometric and hyperbolic functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
sinh
cosh
tanh
asinh(C++11)
acosh(C++11)
atanh(C++11)
错误和伽玛功能
原文:
Error and gamma functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
erf(C++11)
erfc(C++11)
lgamma(C++11)
tgamma(C++11)
最接近的整数,浮点运算
原文:
Nearest integer floating point operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
ceil
floor
round
lround
llround
(C++11)
(C++11)
(C++11)
trunc(C++11)
nearbyint(C++11)
rint
lrint
llrint
(C++11)
(C++11)
(C++11)
浮点操作功能
原文:
Floating point manipulation functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
ldexp
scalbn
scalbln
(C++11)
(C++11)
ilogb(C++11)
logb(C++11)
frexp
modf
nextafter
nexttoward
(C++11)
(C++11)
copysign(C++11)
分类/比较
原文:
Classification/Comparison
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
fpclassify(C++11)
isfinite(C++11)
isinf(C++11)
isnan(C++11)
isnormal(C++11)
signbit(C++11)
isgreater(C++11)
isgreaterequal(C++11)
isless(C++11)
islessequal(C++11)
islessgreater(C++11)
isunordered(C++11)
宏常量
原文:
Macro constants
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
HUGE_VALF
HUGE_VAL
HUGE_VALL
(C++11)

(C++11)
INFINITY(C++11)
NAN(C++11)
math_errhandling
MATH_ERRNO
MATH_ERREXCEPT
(C++11)
FP_NORMAL
FP_SUBNORMAL
FP_ZERO
FP_INFINITE
FP_NAN
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
 
在头文件 <cmath> 中定义
float       hypot( float x, float y );
(1) (C++11 起)
double      hypot( double x, double y );
(2) (C++11 起)
long double hypot( long double x, long double y );
(3) (C++11 起)
Promoted    hypot( Arithmetic x, Arithmetic y );
(4) (C++11 起)
计算xy的平方的总和的平方根,没有不当的上溢或下溢,在中间阶段的计算。这是一个边长的直角三角形的斜边的长度xy,或距离的点(x,y)从原点(0,0),或一个复数x+iy的幅度
原文:
Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation. This is the length of the hypotenuse of a right-angled triangle with sides of length x and y, or the distance of the point (x,y) from the origin (0,0), or the magnitude of a complex number x+iy
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
4)
如果任何参数是整数类型,它被转换为double。如果有另一种说法是long double,则返回类型是long double,否则它是double.
原文:
If any argument has integral type, it is cast to double. If any other argument is long double, then the return type is long double, otherwise it is double.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

目录

[编辑] 参数

x -
浮点值
原文:
floating point value
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
y -
浮点值
原文:
floating point value
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 返回值

一个直角三角形的斜边,x2
+y2
.
原文:
The hypotenuse of a right-angled triangle, x2
+y2
.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 例外

如果结果溢出,范围可能发生错误,FE_OVERFLOW可能会引发.
原文:
If the result overflows, a range error may occur and FE_OVERFLOW may be raised.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
如果结果是次正规,下溢错误,可能会发生与FE_UNDERFLOW可能提出.
原文:
If the result is subnormal, an underflow error may occur and FE_UNDERFLOW may be raised.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 注释

典型的执行战略是计算相当于u1+(
v
u
)2
地方ustd::max(x,y)vstd::min(x,y).
原文:
Typical implementation strategy is to calculate an equivalent of u1+(
v
u
)2
where u is std::max(x,y) and v is std::min(x,y).
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 为例

#include <cmath>
#include <utility>
#include <iostream>
 
std::pair<double, double> cartesian_to_polar(double x, double y)
{
    return {std::hypot(x, y), std::atan2(y,x)};
}
 
int main()
{
    std::pair<double, double> polar = cartesian_to_polar(1, 1);
    std::cout << "(1,1) cartesian is (" << polar.first
               << "," << polar.second<< ") polar\n";
}

输出:

(1,1) cartesian is (1.41421,0.785398) polar

[编辑] 另请参阅

计算平方根(x
原文:
computes square root (x)
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
引起了一些给定的功率(xy
原文:
raises a number to the given power (xy)
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
返回一个复数的幅度
原文:
returns the magnitude of a complex number
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数模板) [edit]