文档功能传输以计算文本文件的行



我想传递一个函数来计算文本文件的行。

编译可以通过,但函数不能传输。我想知道会发生什么。

#include<iostream>
#include<fstream>
#include<string>
using namespace std;
int getLine( const char *filename)
{
ifstream  infile(filename,ios::in);
if(!infile){
cout<<"can not open"<<filename<<'n';
return 0;
}
int count=0;
infile.unsetf(ios::skipws);
char  buff[300];
while(infile.getline(buff,300))
count++;
cout<<"the total line:"<<count<<endl;
infile.close();
return 0;
}
int getLineNoEmpty(const char* filename)
{
ifstream  infile(filename,ios::in);
if(!infile){
cout<<"can not open"<<filename<<'n';
return 0;
}
int count=0;
char  buff[300];
while(infile.getline(buff,300))
{
if(sizeof(buff)==0)
continue;
else
count++;
}
cout<<"the total line without null string:"<<count<<endl;
return 0;
}
int main()
{
char filename[256];
cout<<"input filename:";
cin>>filename;
int getLine(const char &filename);
int getLineNoEmpty(const char &filename);
return 0;
}

编译可以通过,但函数不能传输。我想知道发生了什么。它可以输出我想要的结果。而且我不知道该怎么做 实现计算无空字符串的总行的目标。

首先,你只是在main((中声明了2个函数而不使用它们。改变

int main()
{
char filename[256];
cout<<"input filename:";
cin>>filename;
int getLine(const char &filename);
int getLineNoEmpty(const char &filename);
return 0;
}

int main()
{
char filename[256];
cout<<"input filename:";
cin>>filename;
getLine(filename);
getLineNoEmpty(filename);
return 0;
}

最新更新