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