我有C++代碼。它讀取文件並在此文件中查找字符(「diction」)。在文件中排序C++
while (1)
{
infile.getline(buff, sizeof(buff));
if(infile.eof()) break;
sbuff = buff;
sort(sbuff.begin(), sbuff.end());
an.insert(pair<string, string>(sbuff, buff));
}
im = an.begin();
ane = an.end();
vector<multimap<string, string>::iterator> chg;
chg.push_back(im);
while (++im != ane)
{
chg.push_back(im);
if((*im).first != (*chg[0]).first)
{
if(chg.size() > 2)
{
for(unsigned int i=0; i < chg.size() - 1; i++);
cout << endl;
}
chg.clear();
chg.push_back(im);
}
}
if(chg.size() > 1)
for(unsigned int i=0; i < chg.size(); i++)
cout << (*chg[i]).second << endl;
infile.close();
}
編譯後顯示空行和所有行的早午餐。 在Fedora上的MacOS上,結果相同
什麼是錯誤?
代碼註釋是 「不對勁」 – noelicus