#include <cstring>
    char *strtok( char *str1, const char *str2 );

The strtok function returns a pointer to the next “token” in str1, where str2 contains the delimiters that determine the token. strtok returns NULL if no token is found.

In order to convert a string to tokens, the first call to strtok should have str1 point to the string to be tokenized. All calls afterwards should have str1 be NULL.

For example:

     char str[] = "now # is the time for all # good men to come to the # aid of their country";
     char delims[] = "#";
     char *result = NULL;
     result = strtok( str, delims );
     while( result != NULL ) {
         printf( "result is \"%s\"\n", result );
         result = strtok( NULL, delims );

The above code will display the following output:

     result is "now "
     result is " is the time for all "
     result is " good men to come to the "
     result is " aid of their country"

Related Topics: strchr, strcspn, strpbrk, strrchr, strspn, strstr