Witam, jestem początkującym C++ i mam pewien problem z casem, a mianowicie chcę stworzyć program zapisujący i odczytujący dane z pliku .txt.
Możecie powiedzieć mi dlaczego przy case 2: wyskakuje error i program nie działa?
Oto kod:
#include <iostream>
#include <fstream> // file stream
#include <cstdlib> // exit(0)
using namespace std;
int wybor;
string imie;string nazwisko;string linia;
int telefon;
int main()
{
cout<<"Podaj numer"<<endl;
cin>>wybor;
switch(wybor)
{
case 1:
cout << "Podaj imie" << endl;
cin >> imie;
cout << "Podaj nazwisko" << endl;
cin >> nazwisko;
cout << "Podaj numer telefonu" << endl;
cin >> telefon;
fstream plik;
plik.open("wizytowka.txt", ios::out | ios::app);
plik<<imie<<endl;plik<<nazwisko<<endl;
plik<<telefon<<endl;plik.close();
break;
case 2: // TUTAJ POJAWIA SIE BLAD
fstream plik;
plik.open("wizytowka.txt"), ios::in;
if(plik.good()==false)
{
cout<<"Nie ma takiego pliku!"<<endl;
exit(0);
}
int nr_linii=1;
while(getline(plik,linia))
{
switch(nr_linii)
{
case 1: imie = linia; break;
case 2: nazwisko = linia; break;
case 3: telefon=atoi(linia.c_str()); break;
}
nr_linii++;
}
plik.close();
cout<<imie<<endl;
cout<<nazwisko<<endl;
cout<<telefon<<endl;
break;
default:
cout<<"Nieprawidlowy numer"<<endl;
break;
}
return 0;
}