Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lection5.doc
Скачиваний:
18
Добавлен:
17.12.2018
Размер:
144.9 Кб
Скачать

Функция strtok

Библиотека функций для работы со строками имеет функцию strtok, которая дает возможность разбить строку на подстроки на основании заданного набора символов-ограничителей (подстроки иногда называются лексемами).

Прототип функции strtok:

char* strtok(char *target, const char * delimiters);

Функция разбивает строку на лексемы, согласно символам-ограничителям, заданным в параметре delimeters.

В следующем примере показано, как работать с этой функцией и как получать лексемы, на которые была разбита строка. Функция strtok вводит символ '\0' (символ конца строки) после каждой лексемы.

Пример:

#include <iostream>

#include <string.h>

using namespace std;

int main()

{

char *str = "+*() BASE_COST";

const char *tkn = "+*() ";

char *ptr=str;

cout<<str<<endl;

ptr=strtok(str,tkn); // первый вызов функции strtok

cout << " Лексемы этой строки: " << ptr << " ";

do

{

ptr=strtok(0,tkn);

if (ptr)

cout<<ptr<<" ";

} while(ptr);

cout<<endl;

return 0;

}

В результате выполнения этой программы на экран будет выведена строка:

+*() BASE_COST

Лексемы этой строки: BASE_COST.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]