Значимость предмета статьи поставлена под сомнение. |
strtok — функция стандартной библиотеки языка программирования Си, для поиска лексем в строке. Последовательность вызовов функции разбивает строку на лексемы, разделенные символами разделителями.
Прототип, описанный в заголовочном файле string.h
:
char *strtok(char *string, const char *delim);
Функция возвращает указатель на первую найденную лексему в строке. Если лексем не найдено, то возвращается пустой указатель.
#include <string.h>
#include <cstring>
#include <stdio.h>
#include <string.h>
int main ()
{
char str[] = "Это не баг, это фича.";
printf("Разделение строки \"%s\" на лексемы.", str);
char *pch = strtok (str, " ,."); //во втором параметре указаны разделители (пробел, запятая, точка)
printf("\nЛексемы:");
while (pch != NULL) //пока есть лексемы
{
printf("\n%s", pch);
pch = strtok (NULL, " ,.-");
}
return 0;
}
Вывод:
Разделение строки "Это не баг, это фича." на лексемы. Лексемы: Это не баг это фича
Функция strtok
не реентерабельна. Существуют две потокобезопасные, не входящие в стандарт функции - strtok_s
(в VC++) и strtok_r
(в стандарте POSIX).
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .