C Library - <math.h>



The math.h header defines various mathematical functions and one macro. All the functions available in this library take double as an argument and return double as the result.

Library Macros

There is only one macro defined in this library:

S.N.Macro & Description

When the result of a function may not be representable as a floating point number. If magnitude of the correct result is too large to be represented, the function sets errno to ERANGE to indicate a range error, and returns a particular very large value named by the macro HUGE_VAL or its negation (- HUGE_VAL).

If the magnitude of the result is too small, a value of zero is returned instead. In this case, errno might or might not be set to ERANGE.

Library Functions

Following are the functions defined in the header math.h:

S.N.Function & Description
1double acos(double x)
Returns the arc cosine of x in radians.
2double asin(double x)
Returns the arc sine of x in radians.
3double atan(double x)
Returns the arc tangent of x in radians.
4double atan2(doubly y, double x)
Returns the arc tangent in radians of y/x based on the signs of both values to determine the correct quadrant.
5double cos(double x)
Returns the cosine of a radian angle x.
6double cosh(double x)
Returns the hyperbolic cosine of x.
7double sin(double x)
Returns the sine of a radian angle x.
8double sinh(double x)
Returns the hyperbolic sine of x.
9double tanh(double x)
Returns the hyperbolic tangent of x.
10double exp(double x)
Returns the value of e raised to the xth power.
11double frexp(double x, int *exponent)
The returned value is the mantissa and the integer pointed to by exponent is the exponent. The resultant value is x = mantissa * 2 ^ exponent.
12double ldexp(double x, int exponent)
Returns x multiplied by 2 raised to the power of exponent.
13double log(double x)
Returns the natural logarithm (base-e logarithm) of x.
14double log10(double x)
Returns the common logarithm (base-10 logarithm) of x.
15double modf(double x, double *integer)
The returned value is the fraction component (part after the decimal), and sets integer to the integer component.
16double pow(double x, double y)
Returns x raised to the power of y.
17double sqrt(double x)
Returns the square root of x.
18double ceil(double x)
Returns the smallest integer value greater than or equal to x.
19double fabs(double x)
Returns the absolute value of x
20double floor(double x)
Returns the largest integer value less than or equal to x.
21double fmod(double x, double y)
Returns the remainder of x divided by y.