Contando palavras em uma string - programação c
Eu preciso escrever uma função que contará palavras em uma string. Para o propósito desta atribuição, uma "palavra" é definida como uma sequência de caracteres não nulos, não brancos, separada de outras palavras por espaço em branco.
Isto é o que eu tenho até agora:
int words(const char sentence[ ]);
int i, length=0, count=0, last=0;
length= strlen(sentence);
for (i=0, i<length, i++)
if (sentence[i] != ' ')
if (last=0)
count++;
else
last=1;
else
last=0;
return count;
Não tenho certeza se funciona ou não, porque não posso testá-lo até que todo o meu programa esteja concluído e não tenho certeza de que funcionará. Existe uma maneira melhor de escrever essa função?