xref: /plan9/sys/src/ape/lib/ap/gen/strcspn.c (revision 781103c4074deb8af160e8a0da2742ba6b29dc2b)
1 #include <string.h>
2 
3 #define	N	256
4 
5 size_t
strcspn(const char * s,const char * b)6 strcspn(const char *s, const char *b)
7 {
8 	char map[N], *os;
9 
10 	memset(map, 0, N);
11 	for(;;) {
12 		map[*(unsigned char*)b] = 1;
13 		if(*b++ == 0)
14 			break;
15 	}
16 	os = (char *)s;
17 	while(map[*(unsigned char*)s++] == 0)
18 		;
19 	return s - os - 1;
20 }
21