1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
#include <string.h> char *strtok_r(char *s, const char *delim, char **ptrptr) { int i; char *tmp=0; if (s) (*ptrptr)=s; if (**ptrptr) { while(!(i=strcspn(*ptrptr,delim))) (*ptrptr)++; if (**ptrptr) { tmp=(*ptrptr); (*ptrptr)+=i; if (**ptrptr) *(*ptrptr)++=0; } } return tmp; }