STRTOK(3) Linux Programmer's Manual STRTOK(3)
NAME
strtok, strtok_r - extract tokens from strings
SYNOPSIS
#include <string.h>
char *strtok(char *s, const char *delim);
char *strtok_r(char *s, const char *delim, char **ptrptr);
DESCRIPTION
A `token' is a nonempty string of characters not occurring
in the string delim, followed by \0 or by a character
occurring in delim.
The strtok() function can be used to parse the string s
into tokens. The first call to strtok() should have s as
its first argument. Subsequent calls should have the first
argument set to NULL. Each call returns a pointer to the
next token, or NULL when no more tokens are found.
If a token ends with a delimiter, this delimiting charac-
ter is overwritten with a \0 and a pointer to the next
character is saved for the next call to strtok(). The
delimiter string delim may be different for each call.
The strtok_r() function works the same as the strtok()
function, but instead of using a static buffer it uses a
pointer to a user allocated char* pointer. This pointer,
the ptrptr parameter, must be the same while parsing the
same string.
BUGS
Never use these functions. If you do, note that:
These functions modify their first argument.
The identity of the delimiting character is lost.
These functions cannot be used on constant strings.
The strtok() function uses a static buffer while
parsing, so it's not thread safe. Use strtok_r() if
this matters to you.
RETURN VALUE
The strtok() function returns a pointer to the next token,
or NULL if there are no more tokens.
CONFORMING TO
strtok()
SVID 3, POSIX, BSD 4.3, ISO 9899
GNU February 13, 2000 1
STRTOK(3) Linux Programmer's Manual STRTOK(3)
strtok_r()
POSIX.1c
SEE ALSO
index(3), memchr(3), rindex(3), strchr(3), strpbrk(3),
strsep(3), strspn(3), strstr(3)
GNU February 13, 2000 2