nexttoward(3)

nexttoward3

Next representable value

Part of nextafter(3).

Usage

#include <math.h>

double

nextafter(double x, double y);

float

nextafterf(float x, float y);

long double

nextafterl(long double x, long double y);

double

nexttoward(double x, long double y);

float

nexttowardf(float x, long double y);

long double

nexttowardl(long double x, long double y);

Library

Math Library (libm, -lm)

Overview

These functions return the next machine representable number from x in direction y.

Releases

49 releases since FreeBSD 6.0-RELEASE; the text changed 34 times.

  1. 6.0–6.2
  2. 6.3
  3. 6.4
  4. 7.0
  5. 7.1
  6. 7.2
  7. 7.3
  8. 7.4
  9. 8.0
  10. 8.1
  11. 8.2
  12. 8.3
  13. 8.4
  14. 9.0
  15. 9.1
  16. 9.2
  17. 9.3
  18. 10.0
  19. 10.1
  20. 10.2
  21. 10.3
  22. 10.4
  23. 11.0
  24. 11.1
  25. 11.2
  26. 11.3
  27. 11.4
  28. 12.0
  29. 12.1
  30. 12.2
  31. 12.3
  32. 12.4
  33. 13.0–13.2
  34. 13.3–14.5
  35. 15.0–16.0

Standards

The nextafter(), nextafterf(), nextafterl(), nexttoward(), nexttowardf(), and nexttowardl() routines conform to ISO/IEC 9899:1999 (“ISO C99”). They implement the Nextafter function recommended by IEEE Std 754-1985, with the extension that nextafter(+0.0, -0.0) returns -0.0, and nextafter(-0.0, +0.0) returns +0.0.

History

The nextafter() function appeared in 4.3BSD, and nextafterf() appeared in FreeBSD 2.0.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.