It appears that you believe that strtok will use ,, as a delimiter and ignore ,

That is not the case - strtok will match to ANY characters in const char *delimiters.

So, for ",;:-", strtok...