Dlaczego nie chce zapisywać do pliku i wywala błąd ?
#include <iostream>
#include <fstream>
using namespace std;
struct zamieszkanie {
string ulica;
string miasto;
string kod;
};
struct osoba {
string imie;
string nazwisko;
int wiek;
zamieszkanie x;
};
int main()
{
cout << "=====================\n"
<< "BAZA DANYCH\n"
<< "=====================\n";
int stala;
cout << "podaj ilosc ucznow: ";
cin >> stala;
osoba tab[stala];
for (int i = 0; i < stala; i++) {
cout << "\nuczen numer " << i + 1;
cout << "\npodaj imie: ";
cin.clear();
cin.sync();
getline(cin, tab[i].imie);
cout << "\npodaj nazwisko: ";
cin.clear();
cin.sync();
getline(cin, tab[i].nazwisko);
cout << "podaj wiek \n";
cin >> tab[i].wiek;
cout << "podaj miasto: \n";
cin.clear();
cin.sync();
getline(cin, tab[i].x.miasto);
cout << "podaj ulice: \n";
cin.clear();
cin.sync();
getline(cin, tab[i].x.ulica);
cout << "podaj kod: \n";
cin.clear();
cin.sync();
getline(cin, tab[i].x.kod);
cout << "\n-----------------------------------------------------------------------------\n";
cout << "podano nastepujace dane: " << tab[i].nazwisko << "\nwiek: \n" << tab[i].wiek << "\nmiasto:\n" << tab[i].x.miasto << "\nulica:\n"
<< tab[i].x.ulica << "\nkod:\n" << tab[i].x.kod << "\nimie:\n" << tab[i].imie;
fstream plik;
plik.open("C:/Users/zs4/Desktop/bazadanych.txt", ios::out);
for (int v = 0; v < 4; v++) {
plik << tab[i].imie
plik
<< tab[i].nazwisko;
plik << tab[i].wiek;
}
plik.close();
}
return 0;
}