Date: Mon, 18 Feb 2008 20:34:39 -0800 From: Gary Kline <kline@thought.org> To: Tim Daneliuk <tundra@tundraware.com> Cc: FreeBSD Mailing List <freebsd-questions@freebsd.org> Subject: Re: is there an easier way? Message-ID: <20080219043438.GA32855@thought.org> In-Reply-To: <47BA1375.2010108@tundraware.com> References: <20080218230351.GA28000@thought.org> <47BA1375.2010108@tundraware.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Feb 18, 2008 at 05:23:33PM -0600, Tim Daneliuk wrote:
> Gary Kline wrote:
> > To my fellow C nerds,
> >
> > It's been a great manny years since I wrote this appended
> > snippet. Now I can't remember why (of if ) I need all the
> > strcpy() calls. Is there a simpler, more logical way of
> > printing a bunch of string by snipping off the left-most?
> >
> > In short,, can anyone 'splain why strtok needs all this?
> >
> > tia,
> >
> > gary
> >
> >
>
> I don't think you need the copies. This works just as well:
>
> #include <stdio.h>
> #include <string.h>
>
> main()
> {
> char *bp, *tok;
> char *delim=" ", s1[256]="abc def ghi jkl mno.";
>
> bp = s1; /* Now both point to the literal string to be tokenized */
>
> while ((tok = strtok(bp, delim)) != NULL)
> {
> bp = NULL;
> printf("tok = [%s]\n", tok);
> }
> }
>
>
>
> --
> ----------------------------------------------------------------------------
> Tim Daneliuk tundra@tundraware.com
> PGP Key: http://www.tundraware.com/PGP/
Giving up kmail..... this works too, thanks. But only with
a fixed buffer --obv'ly 256 in this case. still pondering... .
>
--
Gary Kline kline@thought.org www.thought.org Public Service Unix
http://jottings.thought.org http://transfinite.thought.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080219043438.GA32855>
