Manpage logo

memmem - locate a substring

NAME  LIBRARY  SYNOPSIS  DESCRIPTION  RETURN VALUE  ATTRIBUTES  STANDARDS  HISTORY  BUGS  SEE ALSO 

NAME

memmem − locate a substring

LIBRARY

Standard C library (libc−lc)

SYNOPSIS

#define _GNU_SOURCE /* See feature_test_macros(7) */
#include <string.h>

void *memmem(size_t hsize, size_t nsize;
const void
haystack[hsize], size_t hsize,
const void
needle[nsize], size_t nsize);

DESCRIPTION

The memmem() function finds the start of the first occurrence of the substring needle of size nsize in the memory area haystack of size hsize.

RETURN VALUE

The memmem() function returns a pointer to the beginning of the substring, or NULL if the substring is not found.

ATTRIBUTES

For an explanation of the terms used in this section, see attributes(7).

STANDARDS

None.

HISTORY

musl libc 0.9.7; FreeBSD 6.0, OpenBSD 5.4, NetBSD, Illumos.

BUGS

In glibc 2.0, if needle is empty, memmem() returns a pointer to the last byte of haystack. This is fixed in glibc 2.1.

SEE ALSO

bstring(3), strstr(3)


Updated 2026-06-01 - jenkler.se | uex.se