此代碼是索引文件的較大代碼的一部分,並對每個文件中的單詞進行標記,以便您可以在大量文件中搜索某個單詞。 (如谷歌)搜索文件?
此功能應該搜索您的文件,找到您想查找的單詞。但我不完全明白它是如何工作的!
有人可以請解釋這段代碼是做什麼的,它是如何做到的?
另外,我有幾個問題: 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