xref: /original-bsd/lib/libc/string/strsep.3 (revision 7c3db03c)
Copyright (c) 1990 The Regents of the University of California.
All rights reserved.

This code is derived from software contributed to Berkeley by
Chris Torek.

%sccs.include.redist.man%

@(#)strsep.3 5.1 (Berkeley) 05/15/90

STRSEP 3 ""
C 7
NAME
strsep - separate strings
SYNOPSIS
#include <string.h>

char *
strsep(char **stringp, char *delim);
DESCRIPTION
Strsep locates in the null-terminated string at *stringp the first occurence of any character in delim and replaces this with a '\e0', records the location of the immediate following character in *stringp , then returns the original value of *stringp . If no delimiter characters are found, strsep sets *stringp to NULL; if *stringp is initially NULL, strsep returns NULL.
EXAMPLES
The following uses strsep to parse strings containing runs of white space, making up an argument vector:

char inputstring[100]; char **argv[51], **ap = argv, *p, *val; "/* set up inputstring */" for (p = inputstring; p != NULL; ) { while ((val = strsep(&p, " \et")) != NULL && *val == '\e0'); *ap++ = val; } *ap = 0;