1169695Skan/* 2169695Skan 3169695Skan@deftypefn Supplemental void* memchr (const void *@var{s}, int @var{c}, size_t @var{n}) 4169695Skan 5169695SkanThis function searches memory starting at @code{*@var{s}} for the 6169695Skancharacter @var{c}. The search only ends with the first occurrence of 7169695Skan@var{c}, or after @var{length} characters; in particular, a null 8169695Skancharacter does not terminate the search. If the character @var{c} is 9169695Skanfound within @var{length} characters of @code{*@var{s}}, a pointer 10169695Skanto the character is returned. If @var{c} is not found, then @code{NULL} is 11169695Skanreturned. 12169695Skan 13169695Skan@end deftypefn 14169695Skan 15169695Skan*/ 16169695Skan 17169695Skan#include <ansidecl.h> 18169695Skan#include <stddef.h> 19169695Skan 20169695SkanPTR 21169695Skanmemchr (register const PTR src_void, int c, size_t length) 22169695Skan{ 23169695Skan const unsigned char *src = (const unsigned char *)src_void; 24169695Skan 25169695Skan while (length-- > 0) 26169695Skan { 27169695Skan if (*src == c) 28169695Skan return (PTR)src; 29169695Skan src++; 30169695Skan } 31169695Skan return NULL; 32169695Skan} 33