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

              POSIX.1c


SEE ALSO

       index(3),  memchr(3),  rindex(3),  strchr(3),  strpbrk(3),
       strsep(3), strspn(3), strstr(3)


Man(1) output converted with man2html