Строки в C: функция strtok
Strtok - это функция в языке программирования C, которая используется для разделения строки на несколько подстрок на основе указанного разделителя.
Синтаксис функции выглядит следующим образом:
char *strtok(char *str, const char *delim);
Первым параметром передается указатель на строку, которую нужно разделить. Вторым параметром передается указатель на строку-разделитель, которая содержит набор символов, разделители содержащиеся в строке str.
Функция strtok возвращает указатель на первый токен в строке str. В дальнейшем, можно вызывать эту функцию с первым параметром равным NULL, что значит продолжать разделение предыдущей строки.
Например, вот простой пример кода, использующий функцию strtok:
#include
#include
int main ()
{
char str[] = "раз;два;три;четыре";
char * token;
// получаем первый токен
token = strtok(str, ";");
// перебираем все оставшиеся токены
while( token != NULL ) {
printf( "%s\n", token );
token = strtok(NULL, ";");
}
return 0;
}
В результате выполнения этого кода будет выведено:
раз
два
три
четыре
Как видно из кода, мы сначала передаем строку "раз;два;три;четыре" в функцию strtok, и указываем ";", как разделитель. Затем мы перебираем все полученные токены в цикле и выводим их на экран.
Таким образом, функция strtok позволяет легко разделять строки на несколько частей, что может быть полезно при обработке текста и других типов данных.