#include<iostream.h>//cout #include<fstream.h> //fstream
int main(int argc,char * *argv)
{ int i(0); int num[20]; char buffer[100]; ifstream myf(argv[1],ios::nocreate);
while(!myf.eof()) { myf.getline(buffer,100,'\n'); i++; } cout<<i<<endl;//i表示文件的行数 for(int j(0);j<20;j++) num[j]=0; for(int m(0);m<20;m++) { myf.seekg(0);//此处的seekg(0)不起作用,用myf.seekg(0,ios::beg)也不起作用 // 为什么不能把指针指向文件流的开始
while(!myf.eof()) { myf.getline(buffer,100,'\n'); num[m]++; } cout<<num[m]<<" ";//再次输出文件的行数 }
return 0; } 我找个一个56行的文件实验
运行的结果为:
56
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
为什么在for中的seekg(0)不起作用呢??