strtok_r.c raw

   1  #include <string.h>
   2  
   3  char *strtok_r(char *restrict s, const char *restrict sep, char **restrict p)
   4  {
   5  	if (!s && !(s = *p)) return NULL;
   6  	s += strspn(s, sep);
   7  	if (!*s) return *p = 0;
   8  	*p = s + strcspn(s, sep);
   9  	if (**p) *(*p)++ = 0;
  10  	else *p = 0;
  11  	return s;
  12  }
  13