поведение strtok

 int main ()
 {

    char str[] ="kk,12,,23,4,,,3434,3,33,,,";
    char * valarr;
    int count=0;
    valarr = strtok(str,","); 
    while(valarr != '\0')
    {
               valarr = strtok(NULL,","); 
    count++;
    }
    printf("%d\n",count);
   return 0;
  }

В вышеприведенной программе вывод равен 7.

Похоже, что strtok разбивает последовательные запятые сразу.

Вместо последовательных запятых я могу ввести пробел между ними, но есть ли способ преодолеть это, чтобы у меня также было пустое место в подсчете?

Ответы на вопрос(2)

Ваш ответ на вопрос