std::atan2

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

 
 
 
常用数学函数
函数
基础操作
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)
指数函数
exp
exp2(C++11)
expm1(C++11)
log
log10
log1p(C++11)
log2(C++11)
幂函数
sqrt
cbrt(C++11)
hypot(C++11)
pow
三角与双曲函数
sinh
cosh
tanh
asinh(C++11)
acosh(C++11)
atanh(C++11)
误差与伽马函数
erf(C++11)
erfc(C++11)
lgamma(C++11)
tgamma(C++11)
最接近整数的浮点操作
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)
浮点操作函数
ldexp
scalbn
scalbln
(C++11)
(C++11)
ilogb(C++11)
logb(C++11)
frexp
modf
nextafter
nexttoward
(C++11)
(C++11)
copysign(C++11)
分类/比较
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)
宏常量
FP_NORMAL
FP_SUBNORMAL
FP_ZERO
FP_INFINITE
FP_NAN
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
 
定义于头文件 <cmath>
float       atan2( float y, float x );
(1)
double      atan2( double y, double x );
(2)
long double atan2( long double y, long double x );
(3)
Promoted    atan2( Arithmetic y, Arithmetic x );
(4) (C++11 起)
计算使用的参数的迹象,以正确确定象限的反正切值y/x.
原文:
Computes the inverse tangent of y/x using the signs of arguments to correctly determine quadrant.
这段文字是通过 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, y -
浮点值
原文:
floating point value
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 返回值

圆弧相切的弧度的范围内y/x弧度[-π; π].
原文:
Arc tangent of y/x in radians in the range of [-π; π] radians.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
Return value
math-atan2.png
X argument

[编辑] 示例

#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


[编辑] 另请参阅

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

(函数) [edit]
计算弧的正弦(arcsin(x)
原文:
computes arc sine (arcsin(x))
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
计算反余弦(arccos(x)
原文:
computes arc cosine (arccos(x))
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
计算角正切(tan(x)
原文:
computes tangent (tan(x))
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]