Функции strtok() и strtok_r() на C с примерами

C предлагает различные методы strtok() и strtok r() для разделения строки определенным разделителем. Разделить строку — простая задача. Например, у нас есть количество элементов, разделенных запятыми, на диаграмме, но нам нужны отдельные части в массиве.

Параметры

Str: значения этой строки изменяются и разбиваются на небольшие строки.

delim: это строка C, содержащая границу. Они могут варьироваться от вызова к вызову.

Возвращаемое значение

Его функция возвращает ссылку на первую идентифицированную лексему в строке. Когда маркеров для извлечения не осталось, возвращается нулевой указатель.

стрток()

Пример:

Пример ниже демонстрирует использование метода strtok().

#include ‹string.h›

#include ‹stdio.h›

интервал основной () {

char str[80] = «Здравствуйте — www.Tutorialandexample.com;

const char k[2] = «-»;

символ *токен;

токен = strtok (str, k);

/* пройтись по другим токенам */

в то время как (токен! = NULL) {

printf("%s\n", токен);

токен = strtok(NULL, k);

}

возврат (0);

strtok_r()

Аналогично strtok() в C, strtok r() выполняет ту же работу по декодированию строки в шаблон для токенов. Strtok r() — это повторно введенный вариант strtok().

#include ‹stdio.h›

#include ‹string.h›

основной ()

{

char str[] = «Учебник и пример»;

токен char*;

символ * отдых = ул;

в то время как ((токен = strtok_r(остальное, " ", &остальное)))

printf("%s\n", токен);

возврат (0);

}