Analyze comma-separated list of words
#include <stdio.h>
#include <string.h>
int main()
{
char list[5000]="This, is, a, test.";
char words[500][20];
const char comma = ',';
const char space = ' ';
int count = 0;
int word_length = 0;
int i = 0;
while(list[i] != '\0')
{
/* Skip over spaces and commas */
while(list[i] == space || list[i] == comma)
++i;
/* Copy characters that are not space, comma or \0 as part of a word */
while(list[i] != space && list[i] != comma && list[i] != '\0')
words[count][word_length++] = list[i++];
words[count++][word_length] = '\0'; /* Append terminator */
word_length = 0;
}
printf("\nThe words in the list are:\n");
for(i = 0 ; i<count ; i++)
printf("%s\n",words[i]);
}
Related examples in the same category