strtok() が static なデータを保持するから、

どこか他で、意図せずstrtok()してることに気づかなかったら痛い想いする。

char *p;
p = strtok("aaa,bbb,ccc", ",");
printf("%s\n", p); /* aaa */
p = strtok(NULL, ",");
printf("%s\n", p); /* bbb */
p = strtok(NULL, ",");
printf("%s\n", p); /* ccc */