Something
public cpp v1 · immutablechar *tokenize(char *str, const char *delim, char **saveptr) { char *token; if(str) { *saveptr = str; } token = *saveptr; if(!token) { return NULL; } token += strspn(token, delim); *saveptr = strpbrk(token, delim); if(*saveptr) { *(*saveptr)++ = '\0'; } return *token ? token : NULL; }