题目大意就是:读取一个文件,要求打印一些单词,这些单词满足一定的条件。
条件是:开头的两个字符必须是给定的两个字母,比如说he。如果文件中单词以he开头,那么把这些单词打印出来。
闲来无事,偶给出一个简单的实现。
#include<iostream>
#include<fstream>
using namespace std;
char seps[] = " ,/t/"/n.?";
char *token;
int main()
{
ifstream ifs("Test.txt");
if(ifs == NULL)
{
cerr<<"The file was not opened."<<endl;
exit(1);
}
string str;
string src;
while(getline(ifs,str))
{
src += str;
}
cout<<src<<endl;
int si = src.size();
char *pstr = new char[si +1];
strcpy(pstr,src.c_str());
cout<<endl<<endl;
cout<<"Haha.The result is the below words."<<endl;
token = strtok( pstr, seps );
while( token != NULL )
{
/* While there are tokens in "string" */
str = token;
if(str.substr(0,2) == "he")
{
cout<<str<<endl;
}
/* Get next token: */
token = strtok( NULL, seps );
}
cout<<endl<<endl;
delete []pstr;
system("pause");
return 0;
}