Pristine Ack-5.5
[Ack-5.5.git] / lang / cem / libcc.ansi / string / strtok.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: strtok.c,v 1.3 1994/06/24 11:57:22 ceriel Exp $ */
6
7 #include        <string.h>
8
9 char *
10 strtok(register char *string, const char *separators)
11 {
12         register char *s1, *s2;
13         static char *savestring;
14
15         if (string == NULL) {
16                 string = savestring;
17                 if (string == NULL) return (char *)NULL;
18         }
19
20         s1 = string + strspn(string, separators);
21         if (*s1 == '\0') {
22                 savestring = NULL;
23                 return (char *)NULL;
24         }
25
26         s2 = strpbrk(s1, separators);
27         if (s2 != NULL)
28                 *s2++ = '\0';
29         savestring = s2;
30         return s1;
31 }