bstring(3)

bstring3

Byte string operations

Usage

#include <string.h>

int

bcmp(const void *b1, const void *b2, size_t len);

void

bcopy(const void *src, void *dst, size_t len);

void

bzero(void *b, size_t len);

QVoid *

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

int

memcmp(const void *b1, const void *b2, size_t len);

void *

memccpy(void * restrict dst, const void * restrict src, int c, size_t len);

void *

memcpy(void *dst, const void *src, size_t len);

void *

memmove(void *dst, const void *src, size_t len);

void *

memset(void *b, int c, size_t len);

Library

Standard C Library (libc, -lc)

Overview

These functions operate on variable length strings of bytes. They do not check for terminating null bytes as the routines listed in string(3) do.

See the specific manual pages for more information.

Releases

87 releases since FreeBSD 2.0.5-RELEASE; the text changed 42 times.

  1. 2.0.5–3.4
  2. 3.5–3.5.1
  3. 4.0
  4. 4.1–4.2
  5. 4.3–4.4
  6. 4.5–4.11
  7. 5.0–6.3
  8. 6.4
  9. 7.0
  10. 7.1
  11. 7.2
  12. 7.3
  13. 7.4
  14. 8.0
  15. 8.1
  16. 8.2
  17. 8.3
  18. 8.4
  19. 9.0
  20. 9.1
  21. 9.2
  22. 9.3
  23. 10.0
  24. 10.1
  25. 10.2
  26. 10.3
  27. 10.4
  28. 11.0
  29. 11.1
  30. 11.2
  31. 11.3
  32. 11.4
  33. 12.0
  34. 12.1
  35. 12.2
  36. 12.3
  37. 12.4
  38. 13.0–13.2
  39. 13.3–14.0
  40. 14.1–14.2
  41. 14.3–14.5
  42. 15.0–15.1
  43. 16.0

Standards

The functions memcmp(), memcpy(), memmove(), and memset() conform to ISO/IEC 9899:1990 (“ISO C90”).

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

History

The functions bzero() and memccpy() appeared in 4.3BSD; the functions bcmp(), bcopy(), appeared in 4.2BSD.

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