fegetround(3)

fegetround3

Floating-point rounding control

Usage

#include <fenv.h>

#pragma STDC FENV_ACCESS ON

int

fegetround(void);

int

fesetround(int round);

Library

Math Library (libm, -lm)

Overview

The fegetround() function determines the current floating-point rounding mode, and the fesetround() function sets the current rounding mode to round. The rounding mode is one of FE_TONEAREST, FE_DOWNWARD, FE_UPWARD, or FE_TOWARDZERO, as described in fenv(3).

Return values

The fegetround() routine returns the current rounding mode. The fesetround() function returns 0 on success and non-zero otherwise; however, the present implementation always succeeds.

Releases

52 releases since FreeBSD 5.3-RELEASE; the text changed 35 times.

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

Standards

The fegetround() and fesetround() functions conform to ISO/IEC 9899:1999 (“ISO C99”).

History

These routines first appeared in FreeBSD 5.3. They supersede the non-standard fpgetround(3) and fpsetround(3) functions.

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