Witam!
Mimo to, że przed returnem mam napisane getch(); , program po uruchomieniu i po napisaniu tekstu w tym programie, zamyka się odrazu mimo, tego że na codeblocks działa normalnie ten program. Jak mogę to naprawić?
Tu jest kod:
#include <iostream>
#include <list>
#include <cstdlib>
#include <windows.h>
#include <fstream>
#include <conio.h>
using namespace std;
list <string> lista;
void dodajpocz()
{
string n;
cout<<"Podaj imie i nazwisko osoby, która chesz dodac: ";
cin.ignore();
getline(cin, n);
lista.push_front(n);
}
void dodajkon()
{
string n;
cout<<"Podaj imie i nazwisko osoby, która chesz dodac: ";
cin.ignore();
getline(cin, n);
lista.push_back(n);
}
void usunpocz()
{
lista.pop_front();
cout<<"Pomyslnie usunales/usunelas osobe z listy"<<endl;
Sleep(2000);
}
void usunkon()
{
lista.pop_back();
cout<<"Pomyslnie usunales/usunelas osobe z listy"<<endl;
Sleep(2000);
}
void rozmiar()
{
cout<<"Liczba osob na liscie: "<< lista.size()<<endl;
Sleep(2000);
}
void sortowanie()
{
lista.sort();
}
void wyswietl()
{
int a=0;
for(list <string>::iterator i=lista.begin(); i!=lista.end();i++)
{
a++;
cout<<a<<". "<<*i<<endl;
}
}
int main()
{
setlocale(LC_ALL,"");
string lokalizacja; ///u¿ytkownik podaje lokalizacjê swojego pliku
cout<<"Podaj lokalizacje pliku: ";
cin>>lokalizacja;
fstream plik;
plik.open(lokalizacja);
if(plik.is_open())
{
cout<<"Udalo sie otworzyc plik"<<endl;
}
else
{
cout<<"Cos poszlo nie tak..."<<endl;
exit(0);
}
int wybor=0;
while(wybor!=7)
{
cout<<"\tLISTA OSOB"<<endl;
cout<<"--------------------------------"<<endl;
wyswietl();
cout<<"--------------------------------"<<endl;
cout<<"Menu"<<endl;
cout<<"1.Dodaj osobe na koniec listy."<<endl;
cout<<"2.Dodaj osobe na poczatek listy."<<endl;
cout<<"3.Usun osobe z konca listy."<<endl;
cout<<"4.Usun osobe z poczatku listy."<<endl;
cout<<"5.Sprawdz rozmiar listy."<<endl;
cout<<"6.Posortuj liste alfabetycznie."<<endl;
cout<<"7.Wyjdz z aplikacji."<<endl;
cout<<"Wybierz opcje: ";
cin>>wybor;
switch(wybor)
{
case 2:
{
dodajpocz();
break;
}
case 1:
{
dodajkon();
break;
}
case 4:
{
usunpocz();
break;
}
case 3:
{
usunkon();
break;
}
case 5:
{
rozmiar();
break;
}
case 6:
{
sortowanie();
break;
}
case 7:
{
cout<<"Czekaj trwa zapisywanie listy do pliku..."<<endl;
int a=0;
plik<<"Lista Wycieczkowiczow"<<endl;
for(list <string>::iterator i=lista.begin(); i!=lista.end();i++)
{
++a;
plik<<a<<". "<<*i<<endl;
}
exit(0);
break;
}
}
system("cls");
}
plik.close();
getch();
return 0;
}