主题:求助,一个巨2的问题
大家好,我刚注册第一次发帖
刚接触C++一个月吧,遇到了一些很简单的问题但是处理不了
希望大家指教
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
int c,i;
char filename[801];
char input[801];
cout<<"Enter a file name and press ENTER:\n";
cin.getline(filename,800);
ifstream filein(filename); //i是读取文件
if(!filein)
{
cout<<"File "<<filename<<" could not be opened.\n";
return -1;
}
while(1)
{
for(i=1;i<=24&&!filein.eof();i++)
{
filein.getline(input,800);
cout<<input<<endl;
}
if(filein.eof())
break;
cout<<"More?(Press Q to quit.)";
cin.getline(input,800);
c=input[0];
if(c=='Q'||c=='q')
break;
}
return 0;
}
当这个程序读一个.txt的文件的时候
一次能读24行
当我希望它继续读的时候(比如随意按一个不是Q或q的键)
又能读出24行(while循环了)
但为什么是继续读了24行
也就是读了第25-48行
为什么不是再读一次1-24行呢?!
求高人解释
本人先谢谢了!
刚接触C++一个月吧,遇到了一些很简单的问题但是处理不了
希望大家指教
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
int c,i;
char filename[801];
char input[801];
cout<<"Enter a file name and press ENTER:\n";
cin.getline(filename,800);
ifstream filein(filename); //i是读取文件
if(!filein)
{
cout<<"File "<<filename<<" could not be opened.\n";
return -1;
}
while(1)
{
for(i=1;i<=24&&!filein.eof();i++)
{
filein.getline(input,800);
cout<<input<<endl;
}
if(filein.eof())
break;
cout<<"More?(Press Q to quit.)";
cin.getline(input,800);
c=input[0];
if(c=='Q'||c=='q')
break;
}
return 0;
}
当这个程序读一个.txt的文件的时候
一次能读24行
当我希望它继续读的时候(比如随意按一个不是Q或q的键)
又能读出24行(while循环了)
但为什么是继续读了24行
也就是读了第25-48行
为什么不是再读一次1-24行呢?!
求高人解释
本人先谢谢了!