Функција стрток () у Ц ++-у враћа следећи токен у нулу завршеном бајт-низу.
прототип стрток ()
цхар * стрток (цхар * стр, цонст цхар * делим);
strtok()Функција узима два аргумента: Ул и раздв. Ова функција проналази жетон у низу на који показује strtok. Разграничење показивача показује на знакове раздвајача.
Ова функција се може позвати више пута за добивање токена из истог низа. Постоје два случаја:
- Ако стр није НУЛЛ:
Позив стрток () сматра се првим позивом за тај низ. Функција тражи први знак који није садржан у делиму. Ако такав знак није пронађен, низ не садржи ниједан жетон. Тако се враћа нулл показивач. Ако се такав знак пронађе, одатле функција тражи знак који је присутан у разграничењу. Ако није пронађен сепаратор, стр има само један токен. Ако се пронађе сепаратор, он се замењује са ' 0' и показивач на следећи знак се чува на статичном месту за наредне позиве. Коначно, функција враћа показивач на почетак токена. - Ако је стр НУЛЛ:
позив се сматра накнадним позивима стртоку и функција се наставља тамо одакле је отишла у претходном позиву.
Дефинисано је у датотеци заглавља "> датотека заглавља.
стрток () Параметри
str: Показивач на нулу завршени низ бајтова за токенизацију.delim: Показивач на нулу завршени низ бајтова који садржи сепараторе.
стрток () Повратна вредност
strtok()Функција враћа показивач на следећи знак ако постоје, или се враћа НУЛЛ ако нема више токена.
Пример: Како функционира функција стрток ()
#include #include using namespace std; int main() ( char str() = "parrot,owl,sparrow,pigeon,crow"; char delim() = ","; cout << "The tokens are:" << endl; char *token = strtok(str,delim); while (token) ( cout << token << endl; token = strtok(NULL,delim); ) return 0; )
Када покренете програм, излаз ће бити:
Жетони су: папагај сова врабац голуб врана








