index(3)

index3

Locate character in string

Usage

#include <strings.h>

char *

index(const char *s, int c);

char *

rindex(const char *s, int c);

Library

Standard C Library (libc, -lc)

Overview

The index() and rindex() functions have been deprecated in favor of strchr(3) and strrchr(3).

The index() function locates the first occurrence of c (converted to a char) in the string pointed to by s. The terminating null character is considered part of the string; therefore if c is ‘\0’, the functions locate the terminating ‘\0’.

The rindex() function is identical to index(), except it locates the last occurrence of c.

Return values

The functions index() and rindex() return a pointer to the located character, or NULL if the character does not appear in the string.

Releases

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

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

History

The index() and rindex() functions appeared in Version 6 AT&T UNIX. Their prototypes existed previously in ⟨string.h⟩ before they were moved to ⟨strings.h⟩ for IEEE Std 1003.1-2001 (“POSIX.1”) compliance. The functions are not specified by IEEE Std 1003.1-2008 (“POSIX.1”).

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