1) Finds the first occurrence of (unsigned char)ch in the initial count bytes (each interpreted as unsigned char) of the object pointed to by ptr.
2)Type-generic function equivalent to
(1). Let
T
be an unqualified object type (including
void).
ptr
is of type const T*, the return type is const void*.ptr
is of type T*, the return type is void*.If a macro definition of each of these generic functions is suppressed to access an actual function (e.g. if
(memchr)or a function pointer is used), the actual function declaration
(1)becomes visible.
The behavior is undefined if access occurs beyond the end of the array searched. The behavior is undefined if ptr is a null pointer.
This function behaves as if it reads the bytes sequentially and stops as soon as a matching bytes is found: if the array pointed to by ptr is smaller than count, but the match is found within the array, the behavior is well-defined.
(since C11) [edit] Parameters ptr - pointer to the object to be examined ch - bytes to search for count - max number of bytes to examine [edit] Return valuePointer to the location of the byte, or a null pointer if no such byte is found.
[edit] Example#include <stdio.h> #include <string.h> int main(void) { const char str[] = "ABCDEFG"; const int chars[] = {'D', 'd'}; for (size_t i = 0; i < sizeof chars / (sizeof chars[0]); ++i) { const int c = chars[i]; const char *ps = memchr(str, c, strlen(str)); ps ? printf ("character '%c'(%i) found: %s\n", c, c, ps) : printf ("character '%c'(%i) not found\n", c, c); } return 0; }
Possible output:
character 'D'(68) found: DEFG character 'd'(100) not found[edit] References
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4