xref: /csrg-svn/lib/libc/string/strtok.3 (revision 43567)
Copyright (c) 1988 The Regents of the University of California.
All rights reserved.

%sccs.include.redist.man%

@(#)strtok.3 5.5 (Berkeley) 06/23/90

STRTOK 3 ""
C 3
NAME
strtok, strsep - string token operations
SYNOPSIS
#include <string.h>

char *
strtok(char *str, const char *sep);
DESCRIPTION
This interface is obsoleted by strsep(3).

Strtok is used to isolate sequential tokens in a null-terminated string, str . These tokens are separated in the string by "one or more" of the characters in sep . The first time that strtok is called, str should be specified; subsequent calls, wishing to obtain further tokens from the same string, should pass a null pointer instead. The separator string, sep , must be supplied each time, and may change between calls.

Strtok returns a pointer to the start of each subsequent token in the string, after replacing the token itself with a NUL character. When no more tokens remain, a null pointer is returned.

SEE ALSO
index(3), memchr(3), rindex(3), strchr(3), strcspn(3), strpbrk(3), strrchr(3), strsep(3), strspn(3), strstr(3)
STANDARDS
Strtok conforms to ANSI X3.159-1989 (``ANSI C'').
BUGS
There is no way to get tokens from multiple strings simultaneously.

The System V strtok will, if handed a string containing only delimiter characters, not alter the next starting point, so that a call to strtok with a different (or empty) delimiter string may return a non-NULL value. Since this implementation always alters the next starting point, such a sequence of calls would always return NULL.