Name | Synopsis | Description | Return Values | Errors | Attributes | See Also
c99 [ flag... ] file... -lm [ library... ] #include <math.h> double atan2(double y, double x);
float atan2f(float y, float x);
long double atan2l(long double y, long double x);
These functions compute the principal value of the arc tangent of y/x, using the signs of both arguments to determine the quadrant of the return value.
Upon successful completion, these functions return the arc tangent of y/x in the range [ -??,?? ] radians.
If y is ±0 and x is < 0, ±?? is returned.
If y is ±0 and x is > 0, ±0 is returned.
If y is < 0 and x is ±0, -??/2 is returned.
If y is > 0 and x is ±0, ??/2 is returned.
If x is 0, a pole error does not occur.
If either x or y is NaN, a NaN is returned.
If y is ±0 and x is –0, ±?? is returned.
If y is ±0 and x is +0, ±0 is returned.
For finite values of ±y > 0, if x is -Inf, ±?? is returned.
For finite values of ±y > 0, if x is +Inf, ±0 is returned.
For finite values of x, if y is ±Inf, ±??/2 is returned.
If y is ±Inf and x is -Inf, ±3??/4 is returned.
If y is ±Inf and x is +Inf, ±??/4 is returned.
If both arguments are 0, a domain error does not occur.
No errors are defined.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE |
ATTRIBUTE VALUE |
---|---|
Interface Stability |
Standard |
MT-Level |
MT-Safe |
Name | Synopsis | Description | Return Values | Errors | Attributes | See Also