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);
  }
}



Ooops ... wasn't paying attention.  While the printed output is the same, doing
it this way is destructive to the original s1 string - which may matter (or 
not)...



--
----------------------------------------------------------------------------
Tim Daneliuk     [EMAIL PROTECTED]
PGP Key:         http://www.tundraware.com/PGP/

_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to