Я хочу использовать strtok()
, когда разделитель является строкой, например " break point "
т.е.
This is the first part. break point This is the second part
становиться:
This is the first part.
This is the second part
Проблема в том, что когда я включаю пробелы, это также реализуется каждым пробелом.
Вот соответствующий код:
char seps[5] = " $$$ ";
char *token;
char current[500] = {0};
int i=0;
while(fgets(current, 500, relevantFile) != NULL){
printf("number %d:\n", i+1);
token = strtok(current, seps);
while(token != NULL){
printf(token);
printf("\n");
token = strtok(NULL, seps);
}
printf("\n");
i++;
}
когда current - "Einstein, 1900 $$$ Mozart, 1700
".
Ожидаемый ответ в консоли:
number 1:
Einstein, 1900
number 2:
Mozart, 1700
но вместо этого он печатает это:
number 1:
Einstein,
1900
number 2:
Mozart,
1700