02.04.2014, 14:28. Просмотров 260. Ответов 3
Задание : Даны символьные файлы f и g. Записать в файл h все начальные совпадающие компонентов файлов f и g .
C++ |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| # include <iostream>
# include <fstream>
using namespace std;
main()
{
ifstream f,g ;
ofstream h;
f.open("f.txt");
g.open("g.txt");
h.open("h.txt");
char f1,f2;
int c=0; //количество символов
while(!f.eof())
{
f>>f1;cout<<"f "<<f1<<" ";
g>>f2;cout<<"g "<<f2<<endl;
if(f1==f2)
{
c++;
h<<f1<<" ";
}
else
break;
}
cout<<c;
cout<<"File sozdan ...";
} |
|
файл f.txt значения "1 2 3 4 5 6" , в файле g.txt "1 2 3 4 5 6" . выводит в файл h.txt "1 2 3 4 5 6 6"
Почему после прочтения 6 из файла f метод f.eof() в цикле while не срабатывает и начинает еще раз считывать шестерку ?