Determines the next value after x
in the direction of
y
that can be represented by the type of the function.
Include
<math.h>
Prototype
double nexttoward(double x, long double y);
Arguments
x
y
long double
Return Value
Determines the next value after x
in the direction of
y
that can be represented by the type of the function. The value of
y
converted to the type of the function is returned if
x
equals y
.
Remarks
A range error might occur if the magnitude of x
is the
largest finite value representable in the type and the result is infinite or not
representable in the type.
Example
#include <math.h>
#include <stdio.h>
int main(void)
{
double x, z;
long double y;
x = 150.0;
y = 300.0;
z = nexttoward(x, y);
printf("The next representable value after %f in the direction of %Lf is %.10f\n", x, y, z);
x = 150.0;
y = -300.0;
z = nexttoward(x, y);
printf("The next representable value after %f in the direction of %Lf is %.10f\n", x, y, z);
}
Example Output
The next representable value after 150.000000 in the direction of 300.000000 is 150.0000000000
The next representable value after 150.000000 in the direction of -300.000000 is 150.0000000000