char line[] = "COPY\tSTART\t0\tCOPY";
char *tmp;
tmp = strtok(line, "\t");
printf("%s", tmp);
Этот код выводит COPY
. И когдаИдентификаторы парсеров из строки с использованием strtok()
char line[] = "\tSTART\t0\tCOPY";
Выход START
.
Но! Я хочу проверить, что перед строкой START ничего нет. То есть я думаю, \t
- это первый разделитель, поэтому выход strtok(line, "\t")
- NULL
. Но реальный выход START
.
Есть ли недоразумения? Что я могу сделать?
Неясно, что вы пытаетесь сделать? – Eregrith
Разделитель, начинающийся с начала строки, будет пропущен. Вы можете получить '' '' 'С' strsep' вместо этого. – BLUEPIXY