Pristine Ack-5.5
[Ack-5.5.git] / lang / cem / libcc.ansi / string / memchr.c
1 /*
2  * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
3  * See the copyright notice in the ACK home directory, in the file "Copyright".
4  */
5 /* $Id: memchr.c,v 1.4 1994/06/24 11:56:23 ceriel Exp $ */
6
7 #include        <string.h>
8
9 void *
10 memchr(const void *s, register int c, register size_t n)
11 {
12         register const unsigned char *s1 = s;
13
14         c = (unsigned char) c;
15         if (n) {
16                 n++;
17                 while (--n > 0) {
18                         if (*s1++ != c) continue;
19                         return (void *) --s1;
20                 }
21         }
22         return NULL;
23 }