strtok_r man page on Minix

Man page or keyword search:  
man Server   6208 pages
apropos Keyword Search (all sections)
Output format
Minix logo
[printable version]

STRTOK(3)		 BSD Library Functions Manual		     STRTOK(3)

NAME
     strtok, strtok_r — string tokens

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <string.h>

     char *
     strtok(char * restrict str, const char * restrict sep);

     char *
     strtok_r(char *str, const char *sep, char **lasts);

DESCRIPTION
     The strtok() function is used to isolate sequential tokens in a nul-ter‐
     minated string, str.  These tokens are separated in the string by at
     least one of the characters in sep.  The first time that strtok() is
     called, str should be specified; subsequent calls, wishing to obtain fur‐
     ther 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.

     The strtok() function returns a pointer to the beginning of each subse‐
     quent token in the string, after replacing the separator character itself
     with a NUL character.  Separator characters at the beginning of the
     string or at the continuation point are skipped so that zero length
     tokens are not returned.  When no more tokens remain, a null pointer is
     returned.

     The strtok_r() function implements the functionality of strtok() but is
     passed an additional argument, lasts, which points to a user-provided
     pointer which is used by strtok_r() to store state which needs to be kept
     between calls to scan the same string; unlike strtok(), it is not neces‐
     sary to limit tokenizing to a single string at a time when using
     strtok_r().

EXAMPLES
     The following will construct an array of pointers to each individual word
     in the string s:

	   #define MAXTOKENS	   128

	   char s[512], *p, *tokens[MAXTOKENS];
	   char *last;
	   int i = 0;

	   snprintf(s, sizeof(s), "cat dog horse cow");

	   for ((p = strtok_r(s, " ", &last)); p;
	       (p = strtok_r(NULL, " ", &last)), i++) {
		   if (i < MAXTOKENS - 1)
			   tokens[i] = p;
	   }
	   tokens[i] = NULL;

     That is, tokens[0] will point to "cat", tokens[1] will point to "dog",
     tokens[2] will point to "horse", and tokens[3] will point to "cow".

SEE ALSO
     index(3), memchr(3), rindex(3), strchr(3), strcspn(3), strpbrk(3),
     strrchr(3), strsep(3), strspn(3), strstr(3)

STANDARDS
     The strtok() function conforms to ANSI X3.159-1989 (“ANSI C89”).  The
     strtok_r() function conforms to IEEE Std 1003.1c-1995 (“POSIX.1”).

BUGS
     The System V strtok(), if handed a string containing only delimiter char‐
     acters, will 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 start‐
     ing point, such a sequence of calls would always return NULL.

BSD				August 11, 2002				   BSD
[top]

List of man pages available for Minix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net