strtok()
- стандартная функция для разбора строк с произвольными разделителями.Это, однако, не потокобезопасно.Ваша библиотека C может иметь поточно-ориентированный вариант.
Еще один совместимый со стандартами способ (только что написал, он не проверен ):
#include <string.h>
#include <stdio.h>
int main()
{
char string[] = "foo\tbar\tbaz";
char * start = string;
char * end;
while ( ( end = strchr( start, '\t' ) ) != NULL )
{
// %s prints a number of characters, * takes number from stack
// (your token is not zero-terminated!)
printf( "%.*s\n", end - start, start );
start = end + 1;
}
// start points to last token, zero-terminated
printf( "%s", start );
return 0;
}