Я пытаюсь разбить строку на токены с помощью ';'. Но у меня проблема, например, некоторые токены пусты/нулевые; 123;123132;;;232;232323;;;;1; Поэтому я не могу использовать strtok, потому что он объединяет соседние разделители. Я вижу, что вы публикуете это решение:
include <string.h>
char *data = "this&&that&other";
char *next;
char *curr = data;
while ((next = strchr(curr, '&')) != NULL) {
/* process curr to next-1 */
curr = next + 1;
}
/* process the remaining string (the last token) */
Но я не понимаю, потому что, когда я делаю next-1, чтобы получить первое значение, я получаю только первое слово значения, а не все значение. Можете ли вы мне помочь? У вас есть идеи, как разделить это? Я программирую на Си. В другом посте я вижу, что существует функция strsep, которая кажется именно тем, что мне нужно, но в библиотеке C ansi эта функция не включена. Спасибо и извините за мой английский :)