xref: /aosp_15_r20/external/musl/src/string/strtok.c (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker #include <string.h>
2*c9945492SAndroid Build Coastguard Worker 
strtok(char * restrict s,const char * restrict sep)3*c9945492SAndroid Build Coastguard Worker char *strtok(char *restrict s, const char *restrict sep)
4*c9945492SAndroid Build Coastguard Worker {
5*c9945492SAndroid Build Coastguard Worker 	static char *p;
6*c9945492SAndroid Build Coastguard Worker 	if (!s && !(s = p)) return NULL;
7*c9945492SAndroid Build Coastguard Worker 	s += strspn(s, sep);
8*c9945492SAndroid Build Coastguard Worker 	if (!*s) return p = 0;
9*c9945492SAndroid Build Coastguard Worker 	p = s + strcspn(s, sep);
10*c9945492SAndroid Build Coastguard Worker 	if (*p) *p++ = 0;
11*c9945492SAndroid Build Coastguard Worker 	else p = 0;
12*c9945492SAndroid Build Coastguard Worker 	return s;
13*c9945492SAndroid Build Coastguard Worker }
14