此代码是索引文件的较大代码的一部分,并对每个文件中的单词进行标记,以便您可以在大量文件中搜索某个单词。 (如谷歌)搜索文件?
此功能应该搜索您的文件,找到您想查找的单词。但我不完全明白它是如何工作的!
有人可以请解释这段代码是做什么的,它是如何做到的?
另外,我有几个问题: 1)“infile”究竟是什么? 2)内置函数c_str()是做什么的? 3)为什么变量“currentlineno”从1开始?文件的第一行不能从0开始? 4)++ x和x ++有什么区别? 5)条件“currentlineno < lineNumber”和“currentlineno!= lineNumber”之间有什么区别?
这是代码:
void DisplayResult(string fileName, int lineNumber)
{
ifstream infile(fileName.c_str(), ifstream::in);
char line[1000];
int currentlineno = 1;
while(currentlineno < lineNumber)
{
infile.getline(line, 1000);
++currentlineno;
}
infile.getline(line, 1000);
cout<<endl<<"\nResult from ("<<fileName<<"), line #"<<lineNumber<<": "<<endl;
cout<<"\t"<<line;
infile.close();
}
嗯。其中一些问题听起来像是作业问题。但如果这是一个课堂练习,你应该寻找更好的课程。 – JoergB
不,这不是功课。 – user1910524