Witam napisałem program który tworzy baza danych i zapisuje ją do pliku ale mam problem z wyświetleniem zawartości pliku wywala błąd…
(po zamknięciu programu i odpaleniu go ponownie nie da się wyświetlić zawartości pliku).
Proszę o pomoc w rozwiązaniu tego problemu.
Oto kod programu:
#include
#include
#include
#include
using namespace std;
struct rekord
{
char marka[30];
char model[30];
int rok;
float cena;
int przebieg;
};
void wyswietl(rekord *wsk, int i, int &licznik);
void dodaj(rekord *wsk,int i, int &licznik);
int main()
{ int licznik=0;
int ile;
char z;
rekord *wsk;
rekord baza[100];
do{
system("cls");
cout << "Komis samochodowy:" << endl;
cout << "1-Dodaj" << endl;
cout << "2-Wyswietl" << endl;
cout << "3-Szukaj" <
cout << "4-Wczytaj z pliku" <
cout << "5-Zapisz do pliku" <
cout << "6-Wyjscie" <
cin>>z;
int licznik2=licznik-1;
switch (z)
{
case '1' :
system("cls");
cout<<"Dodawanie samochodu"<
wsk=&baza[licznik];
dodaj(wsk,ile,licznik);
break;
case '2' :
system("cls");
cout<
cout<<"Zawartosc bazy danych: "<
wyswietl(wsk,ile,licznik);
cout<<"dowolny klawisz aby wyjsc"<
getch();
break;
case '3' :
system("cls");
break;
//wczytanie z pliku===========================================
case '4' :
{
system("cls");
ifstream mojplik;
mojplik.open("abc.txt");
while(!mojplik.eof())
{
mojplik>>wsk->marka;
mojplik>>wsk->model;
mojplik>>wsk->rok;
mojplik>>wsk->przebieg;
mojplik>>wsk->cena;
wsk++;
}
mojplik.close();
}
break;
//zapis do pliku ==============================================
case '5' :
{
system("cls");
ofstream mojplik;
mojplik.open("abc.txt");
//mojplik<
for(int b=0;b
{
wsk--;
}
for (int z=0;z
{
mojplik<<(*wsk).marka<<" "<model<<" "<rok<<" "<przebieg<<" "<cena<
wsk++;
}
mojplik.close();
wsk--;
}
break;
}
}while(z!='6');
return 0;
}
//=======================Wyswietlanie========================
void wyswietl(rekord *wsk, int i, int &licznik)
{
i=licznik;
int g=licznik-1;
for(int b=0;b
{
wsk--;
}
int a=licznik;
cout<<"Ilosc samochodow w bazie: "<
cout<
for (int a=0;a
{
cout<
cout<<"Dane samochodu numer "<
cout<<"marka: "<<(*wsk).marka<
cout<<"model: "<<(*wsk).model<
cout<<"rok: "<<(*wsk).rok<
cout<<"przebieg: "<<(*wsk).przebieg<<"km"<
cout<<"cena: "<<(*wsk).cena<<"zl"<
wsk++;
}
}
//=======================Dodawanie=========================
void dodaj(rekord *wsk,int i,int &licznik)
{
cout<<"podaj marke: "<
cin>>(*wsk).marka;
cout<<"podaj model: "<
cin>>(*wsk).model;
cout<<"podaj rok: "<
cin>>(*wsk).rok;
cout<<"podaj przebieg: "<
cin>>(*wsk).przebieg;
cout<<"Podaj cene:"<
cin>>(*wsk).cena;
wsk++;
licznik++;
}
//=======================Szukanie======================[/code]