memchr
Section: C Library Functions (3)
Updated: 202-0-08
Index
Return to Main Contents
NAME
memchr, memrchr, rawmemchr - scan memory for a character
LIBRARY
Standard C library
(
libc,~
-lc)
SYNOPSIS
#include <string.h>
void *memchr(size_t n;
const void s[n], int c, size_t n);
void *memrchr(size_t n;
const void s[n], int c, size_t n);
[[deprecated]] void *rawmemchr(const void *s, int c);
Feature Test Macro Requirements for glibc (see
feature_test_macros(7)):
memrchr(),
rawmemchr():
_GNU_SOURCE
DESCRIPTION
The
memchr()
function scans the initial
n
bytes of the memory
area pointed to by
s
for the first instance of
c.
Both
c
and the bytes of the memory area pointed to by
s
are interpreted as
unsigned char.
The
memrchr()
function is like the
memchr()
function,
except that it searches backward from the end of the
n
bytes pointed to by
s
instead of forward from the beginning.
The
rawmemchr()
function is similar to
memchr(),
but it assumes
(i.e., the programmer knows for certain)
that an instance of
c
lies somewhere in the memory area starting at the location pointed to by
s.
If an instance of
c
is not found, the behavior is undefined.
Use either
strlen(3)
or
memchr(3)
instead.
RETURN VALUE
The
memchr()
and
memrchr()
functions return a pointer
to the matching byte or NULL if the character does not occur in
the given memory area.
The
rawmemchr()
function returns a pointer to the matching byte.
ATTRIBUTES
For an explanation of the terms used in this section, see
attributes(7).
| Interface | Attribute | Value
|
|
memchr(),
memrchr(),
rawmemchr()
| Thread safety | M-Safe
|
STANDARDS
- memchr()
-
C11, POSIX.-2008.
- memrchr()
-
rawmemchr()
GNU.
HISTORY
- memchr()
-
POSIX.-2001, C89, SVr4, 4.3BSD.
- memrchr()
-
glibc 2.2.
- rawmemchr()
-
glibc 2.1.
SEE ALSO
bstring(3),
ffs(3),
memmem(3),
strchr(3),
strpbrk(3),
strrchr(3),
strsep(3),
strspn(3),
strstr(3),
wmemchr(3)
Index
- NAME
-
- LIBRARY
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- ATTRIBUTES
-
- STANDARDS
-
- HISTORY
-
- SEE ALSO
-