sounds like you are on the right track.. counting the number of spaces is probably the easiest way to calculate the number of words in a file.. but as you have already identified.. one could run into trouble if there are multiple spaces in between words..
so why not identify the number of situations where there is a space and the next character is not a space...
#include<cctype>
if( isspace(string[i]) && !isspace(string[i+1])
++word_count;
the above code is not perfect.. you'll have to make considerations for the first word for example.. but should get ye' on the right track ;)
Clinton Portis
Practically a Posting Shark
833 posts since Oct 2005
Reputation Points: 237
Solved Threads: 118
Haven't seen any of your code.. but here is my guess:
int i=0, word_count=0;
//If no text head been read, exit the function
if(!myText.size())
return;
//Test to see if there are any non-white spaces
bool flag=FALSE;
while(!Flag && myText.substring(i, 1))
{
if(!isspace(myText.substring))
flag=TRUE;
i++;
}
if(flag==FALSE)
{
cout << "No Text Entered!";
return;
}
//Perform word count - first word
i=0;
while(myText.substring(i, 1))
{
if(isspace(myText.substring(i, 1)) && !isspace(myText.substring(i+1, 1)))
word_count++;
i++;
}
//"First Word" provision
word_count++;
like i said.. haven't seen any of your code.. just throwing something your way to think about :cool:
Clinton Portis
Practically a Posting Shark
833 posts since Oct 2005
Reputation Points: 237
Solved Threads: 118
why not make your own isspace() function then.. ;)
Clinton Portis
Practically a Posting Shark
833 posts since Oct 2005
Reputation Points: 237
Solved Threads: 118