.\" Modified Wed Feb 20 21:09:36 2002, Ian Redfern (redferni@logica.com)
.\" 2008-07-09, mtk, add rawmemchr()
.\"
-.TH MEMCHR 3 2015-01-10 "" "Linux Programmer's Manual"
+.TH MEMCHR 3 2017-09-15 "" "Linux Programmer's Manual"
.SH NAME
memchr, memrchr, rawmemchr \- scan memory for a character
.SH SYNOPSIS
.nf
.B #include <string.h>
-
+.PP
.BI "void *memchr(const void *" s ", int " c ", size_t " n );
-
+.PP
.BI "void *memrchr(const void *" s ", int " c ", size_t " n );
-
+.PP
.BI "void *rawmemchr(const void *" s ", int " c );
.fi
-.sp
+.PP
.in -4n
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.in
-.sp
+.PP
.BR memrchr (),
.BR rawmemchr ():
_GNU_SOURCE
bytes pointed to by
.I s
instead of forward from the beginning.
-
+.PP
The
.BR rawmemchr ()
function is similar to
is not found, the results are unpredictable.
The following call is a fast means of locating a string's
terminating null byte:
+.PP
.in +4n
-.nf
-
+.EX
char *p = rawmemchr(s,\ \(aq\\0\(aq);
-.fi
+.EE
.in
.SH RETURN VALUE
The
functions return a pointer
to the matching byte or NULL if the character does not occur in
the given memory area.
-
+.PP
The
.BR rawmemchr ()
function returns a pointer to the matching byte, if one is found.
.SH VERSIONS
.BR rawmemchr ()
first appeared in glibc in version 2.1.
-
+.PP
.BR memrchr ()
first appeared in glibc in version 2.2.
.SH ATTRIBUTES
T} Thread safety MT-Safe
.TE
.SH CONFORMING TO
-The
-.BR memchr ()
-function conforms to SVr4, 4.3BSD, C89, C99, POSIX.1-2001.
-
+.BR memchr ():
+POSIX.1-2001, POSIX.1-2008, C89, C99, SVr4, 4.3BSD.
+.PP
The
.BR memrchr ()
function is a GNU extension, available since glibc 2.1.91.
-
+.PP
The
.BR rawmemchr ()
function is a GNU extension, available since glibc 2.1.
.SH SEE ALSO
+.BR bstring (3),
.BR ffs (3),
.BR index (3),
.BR memmem (3),