NAZWA¶
strtok, strtok_r - wydzielanie słów z łańcuchów
SKŁADNIA¶
#include <string.h>
char *strtok(char *s, const char *delim);
char *strtok_r(char *s, const char *delim, char **ptrptr);
OPIS¶
Uwaga! To tłumaczenie może być nieaktualne!
`Słowo' jest to niepusty ciąg znaków, które nie
występują w łańcuchu
delim, poprzedzony znakiem \0
lub znakiem występującym w
delim.
Funkcja
strtok() służy do rozkładania ciągu
znaków
s na słowa. Pierwsze odwołanie do
strtok()
powinno posiadać
s jako pierwszy argument. Następne
wywołania powinny mieć jako pierwszy argument NULL. Każde
wywołanie zwraca wskaźnik do następnego słowa lub NULL,
gdy nie ma już więcej słów.
Jeśli słowo kończy się separatorem (delim), to ten
kończący znak jest nadpisywany przez \0 i zapamiętywany jest
wskaźnik do następnego znaku dla następnego wywołania
strtok. Ciąg separatorów
delim może być inny
dla każdego wywołania.
Funkcja
strtok_r() działa tak samo, jak
strtok(), ale zamiast
korzystać ze statycznego bufora, korzysta ze wskaźnika do
przydzielonego przez użytkownika wskaźnika char*. Wskaźnik ten,
parametr
ptrptr, nie może zostać zmieniony podczas
rozkładania jednego łańcucha.
USTERKI¶
Nigdy nie należy używać tej funkcji. Jeśli jest to jednak
konieczne, należy zauważyć, że:
Funkcje te modyfikują swój pierwszy
argument.
Tożsamość znaku separatora jest tracona.
Funkcje ta nie mogą być stosowana z ciągami stałymi.
Funkcja
strtok() korzysta ze statycznego bufora, więc nie jest
przystosowana do wielowątkowości. Jeśli ma to znaczenie,
należy używać
strtok_r().
WARTOŚĆ ZWRACANA¶
Funkcja
strtok() zwraca wskaźnik do następnego słowa lub
NULL, jeśli nie ma już więcej słów.
ZGODNE Z¶
- strtok()
- SVID 3, POSIX, BSD 4.3, ISO 9899
- strtok_r()
- POSIX.1c
ZOBACZ TAKŻE¶
index(3),
memchr(3),
rindex(3),
strchr(3),
strpbrk(3),
strsep(3),
strspn(3),
strstr(3)
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu
Tłumaczenia Manuali i
może nie być aktualne. W razie
zauważenia różnic między powyższym opisem a
rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o
zapoznanie się z oryginalną (angielską) wersją strony
podręcznika za pomocą polecenia:
- man --locale=C 3 strtok
Prosimy o pomoc w aktualizacji stron man - więcej informacji można
znaleźć pod adresem
http://sourceforge.net/projects/manpages-pl/.