imaxdiv(3)

imaxdiv3

Return quotient and remainder from division

Part of div(3).

Usage

Standard C Library (libc, -lc)

#include <stdlib.h>

div_t

div(int numer, int denom);

ldiv_t

ldiv(long numer, long denom);

lldiv_t

lldiv(long long numer, long long denom);

#include <inttypes.h>

imaxdiv_t

imaxdiv(intmax_t numer, intmax_t denom);

Overview

The div(), ldiv(), lldiv(), and imaxdiv() functions compute the value of numer (the numerator) divided by denom (the denominator) and return the stored result in the form of the div_t, ldiv_t, lldiv_t, or imaxdiv_t types, respectively. These types are structs which contain two int, long, long long, or intmax_t members named quot (the quotient) and rem (the remainder).

Releases

56 releases since FreeBSD 5.0-RELEASE; the text changed 34 times.

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

Standards

The div(), ldiv(), lldiv(), and imaxdiv() functions conform to ISO/IEC 9899:2024 (“ISO C23”) and IEEE Std 1003.1-2024 (“POSIX.1”).

History

The div() and ldiv() functions first appeared in 4.3BSD. The lldiv() and imaxdiv() functions first appeared in FreeBSD 5.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.