atan2(y,x)是表示x-y平面上所對應的(x,y)座標的角度,它的值域範圍是(-pi,pi) 用數學表示就是:atan2(y,x)=arg(y/x)-pi
當y<0時,其值為負,
當y>0時,其值為正.
原型:extern float atan2(float y, float x);
用法:#include
功能:求y/x(弧度表示)的反正切值
說明:值域為(-π/2,+π/2)。
舉例
#include#include int main()
makefile檔案:
cxx=g++
cflags=-o3 -wall -fmessage-length=0 -fpic -darch_x86
objs=atan2.o
libs+=
target= tatan2
$(target):$(objs)
$(cxx) -o $(target) $(objs) $(cflags) $(libs)
chmod 6755 $(target)
all:$(target)
install: all
chmod 6755 $(target)
clean:
rm -f $(objs) $(target)
執行結果:
[root@localhost atan2]# make
make: warning: file `makefile' has modification time 113 s in the future
cc -o3 -wall -fmessage-length=0 -fpic -darch_x86 -c -o atan2.o atan2.c
g++ -o tatan2 atan2.o -o3 -wall -fmessage-length=0 -fpic -darch_x86
chmod 6755 tatan2
make: warning: clock skew detected. your build may be incomplete.
[root@localhost atan2]# ./tatan2
atan2(0.200,0.06)=1.2611
C C 中的atan和atan2函式例項用法
在c語言的math.h或c 中的cmath中有兩個求反正切的函式atan double x 與atan2 double y,double x 他們返回的值是弧度 要轉化為角度再自己處理下。前者接受的是乙個正切值 直線的斜率 得到夾角,但是由於正切的規律性本可以有兩個角度的但它卻只返回乙個,因為ata...
atan2與atan的區別
對於tan y x 當點 x,y 在象限的邊界也就是座標軸上時 atan接受的是乙個正切值 直線的斜率 得到夾角,但是由於正切的規律性本可以有兩個角度的但它卻只返回乙個,因為atan的值域是從 90 90 也就是它只處理一四象限,所以一般不用它。atan2 double y,double x 其中y...
ATan2與ATan的區別
相比較atan,atan2究竟有什麼不同?本篇介紹一下atan2的用法及使用條件。對於tan y x atan y x 求出的 取值範圍是 pi 2,pi 2 atan2 y,x 求出的 取值範圍是 pi,pi 當 x,y 在第一象限,0 pi 2.當 x,y 在第二象限 pi 2 pi.當 x,y...