ifstream infile
infile.open("xxx.txt");
int x;
while(!infile.eof())
infile>>x;
以为当读完最后一个字符时,infile.eof()变为true,实际中发现当读完最后一个字符时,还会再读一次,当发现没有新的可以给x时,eof()才会变为true,这个时候的x会跟最后一个字符一样,导致我们读取的实际内容会比txt中多一行(这行和最后一个一模一样).
所以应该修改为:
while(infile>>x)
当判断没有字符可以>>x时就退出while循环.