如何在C++中比较两个文件



我需要比较C++中的两个文件,并为每个文件增加一个计数器的值"平等;建立

我的代码:

ifstream flux("C:\Users\Matthieu\Desktop\test.txt",ios::in);
char ligne[100];
ifstream flux2("base_fonctions.txt", ios::in);
char ligne2[100];
while (flux.getline(ligne, 100)) {
bool found = false;
while (flux2.getline(ligne2, 100)) {
if (ligne == ligne2) {
found = true;
count = count + 0.5;
}
}
if (found==false) {
count = count;
}
}
return count;

我想将test.txt文件的第1行与base_functions.txt文件的所有行进行比较,将测试文件的第2行与第二个文件的所有行都进行比较,等等。
当前,当两个文件之间确实相等时,我的函数总是返回零?

您的比较不起作用,因为它不是在比较行,而是在比较数组指针,在这种情况下它们永远不会相等。你的计数不应该是0,但我想它是一个整数,它正在加0

要比较两行,可以使用<cstring>中的strcmp。

此外,这种归因是没有必要的,因为它没有任何意义。

if (found==false) {
count = count;
}

相关内容

  • 没有找到相关文章

最新更新