c++望大神赐教,按行读取字符串,比较两个文件中每行字符串是否相同

#include<iostream>
#include<string>
#include<fstream>
#include<iomanip>
using namespace std;
int main()
{
ifstream file1("D:\\file1.txt",ios::binary|ios::trunc);
if(!file1)
{
cout<<"cannot open"<<endl;
exit(1);
}
char*s1;
char*s2;
ifstream file2("D:\\file2.txt",ios::binary|ios::ate);
if(!file2)
{
cout<<"cannot open";
exit(1);
}
int i=1;
char m;
while(!file1.eof()&&!file2.eof())
{
file1.getline(s1,100);
file1.ignore();
file2.getline(s2,100);
file2.ignore();
i++;
if(s1==s2)
cout<<"equal";
else
cout<<i<<"difference"<<endl<<"if going on";
cin>>m;
if(m=='N')
break;
else
continue;
}
return 0;
}

if(s1==s2)
cout<<"equal";
字符串很明显不可以这么比较啊。用strcmp函数在string.h库里追问

哦哦是的,问题是文件打不开怎么办?

追答

你在对应的位置有这两个文件吗?

追问

有啊文本文档,trunc不是也可以创建吗?

追答

trunc是若文件存在则清空,不存在则建立。

温馨提示:答案为网友推荐,仅供参考
相似回答