My Issue включает чтение целых чисел из текстового файла, сохранение их в массив и последующее копирование массива в новый .txt-файл.Невозможно получить последний int из файла .txt
Так есть файл «krol.txt
»
2 4
3 7
3 13
2 4
3 1
Проблема заключается в том, что она никогда не сохранить последний «1» из входного файла .txt. Понятия не имею почему. Я думаю, что о EOF о последнем персонаже в файле, но почему он работает так? Может кто-нибудь мне помочь?
Это мой код:
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
int main() {
ofstream outFile;
ifstream fin;
fin.open("krol.txt");
int l=0;
char ch;
while (fin.good()) {
fin.get(ch);
if(ch=='\n') l++;
}
fin.close();
fin.open("krol.txt");
int temp[l][2];
int savel=l;
l=0;
int i=0;
while (fin >> (temp[l][i])) {
i++;
if(i==2) {
i=0;
l++;
}
}
outFile.open("save.txt");
for (int i=0, j=0;j<savel;i++) {
if (i==2) {
i=0; j++;
}
outFile << temp[j][i];
}
outFile.close();
system("PAUSE");
return 0;
}
Действительно ли это * компилируется? 'int temp [l] [2];' (это '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' –