|memchr(3)||Library Functions Manual||memchr(3)|
memchr, memrchr, rawmemchr - scan memory for a character
Standard C library (libc, -lc)
void *memchr(const void s[.n], int c, size_t n); void *memrchr(const void s[.n], int c, size_t n);
[[deprecated]] void *rawmemchr(const void s[.n], int c);
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.
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.
rawmemchr() first appeared in glibc 2.1.
memrchr() first appeared in glibc 2.2.
For an explanation of the terms used in this section, see attributes(7).
|memchr (), memrchr (), rawmemchr ()||Thread safety||MT-Safe|
memchr(): POSIX.1-2001, POSIX.1-2008, C99, SVr4, 4.3BSD.
The memrchr() function is a GNU extension, available since glibc 2.1.91.
The rawmemchr() function is a GNU extension, available since glibc 2.1.
|2023-01-05||Linux man-pages 6.03|