memrchr(3)

memrchr3

Locate byte in memory object

Part of memchr(3).

Usage

#include <string.h>

QVoid *

memchr(QVoid *b, int c, size_t len);

QVoid *

memrchr(QVoid *b, int c, size_t len);

Library

Standard C Library (libc, -lc)

Overview

The memchr() function locates the first occurrence of c (converted to an unsigned char) in object b, limited to at most len characters.

The memrchr() function behaves like memchr(), except that it locates the last occurrence of c in object b, limited to the first len characters.

Return values

The memchr() and memrchr() functions return a pointer to the byte located, or NULL if no such byte exists within len bytes.

Releases

44 releases since FreeBSD 6.4-RELEASE; the text changed 33 times.

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

Standards

The memchr() function conforms to ISO/IEC 9899:2024 (“ISO C23”), where it is specified as a qualifier-preserving function.

The memrchr() function is a GNU extension and conforms to no standard. Like the qualifier-preserving functions in ISO/IEC 9899:2024 (“ISO C23”), FreeBSD implements memrchr() as qualifier-preserving as well.

History

The memrchr() function first appeared in GNU libc 2.1.91, this implementation first appeared in FreeBSD 6.4, coming from OpenBSD 4.3.

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