1
我正在做一個小小的Cpp控制檯應用程序,我在比較兩個文件並查看它們是否不同。fstream指向特定路徑(到桌面前)
我想知道,我怎麼可以改變路徑像C:\Users\%user%\Desktop\tekst1.txt
我在哪裏做的?因爲我試圖谷歌它,我無法找到它。
它從書的申請 「工程問題,使用C解決++」
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
const string AFIL = "tekst1.txt";
const string BFIL = "tekst2.txt";
const char NEWLINE = '\n';
int main()
{
char a, b;
int linje = 1, forskellige = 0, linje_flag = 0;
ifstream afil, bfil;
afil.open(AFIL.c_str());
if (afil.fail()){
cerr << AFIL << " kan ikke åbnes\n";
exit(1);
}
bfil.open(BFIL.c_str());
if (bfil.fail()){
cerr << BFIL << " kan ikke åbnes\n";
exit(1);
}
afil.get(a);
bfil.get(b);
while ((!afil.eof()) && (!bfil.eof()))
{
if (a != b)
{
forskellige++;
linje_flag = 1;
while (a != NEWLINE && !afil.eof())
afil.get(a);
while (b != NEWLINE && !bfil.eof())
bfil.get(b);
cout << "Filerne er forskellige i linie: " << linje << endl;
}
if (a == NEWLINE)
{
linje++;
}
afil.get(a);
bfil.get(b);
}
if ((afil.eof()) != (bfil.eof()))
{
cout << "Filerne er forskellige i sidste karakter: " << linje << endl;
forskellige++;
}
if (forskellige == 0)
cout << "Filerne er ens\n";
afil.close();
bfil.close();
system("pause");
return 0;
}
'while((!!afil.eof())&&(!bfil.eof()))'注意:http://stackoverflow.com/questions/5605125/why-is-iostreameof-inside-a-loop - 情況考慮錯誤 – 2014-11-02 11:44:16
我沒有得到它,在另一個線程。請解釋。 – user1098185 2014-11-02 11:49:37
關於_很難理解什麼?「因爲iostream :: eof只會在讀完流後結束。」_。 – 2014-11-02 11:51:20