• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

otwieranie pliku .exe

0 głosów
129 wizyt
pytanie zadane 25 czerwca 2020 w Systemy operacyjne, programy przez Marcinuq Początkujący (480 p.)
edycja 25 czerwca 2020 przez Marcinuq

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;
}

 

komentarz 25 czerwca 2020 przez tkz Nałogowiec (41,900 p.)
Może coś jest w buforze. Bez kodu trudno stwierdzić.
komentarz 25 czerwca 2020 przez Marcinuq Początkujący (480 p.)
Dodałem kod :).
komentarz 25 czerwca 2020 przez tkz Nałogowiec (41,900 p.)
Nigdy nie dojdziesz do tego momentu, przez Twoje exit(0)(co nie jest najlepszym pomysłem). W ogóle dlaczego masz break'i w casach?
komentarz 25 czerwca 2020 przez Marcinuq Początkujący (480 p.)
A ok, a te break'i po to by funkcje z tych dalszych przypadków się nie wykonywały.
komentarz 25 czerwca 2020 przez tkz Nałogowiec (41,900 p.)
Z zasady stawia się je za ostatnim nawiasem.
komentarz 25 czerwca 2020 przez Marcinuq Początkujący (480 p.)
no dobra, ale mi działa. Tylko co mam zrobić zamiast tego exita żeby mi ten program.exe pokazywał wszystko, a nie zamykał się po napisaniu tej lokalizacji.
komentarz 25 czerwca 2020 przez tkz Nałogowiec (41,900 p.)
W którym momencie się zamyka? Zmień pozycje  getch(); na tam, gdzie chcesz by się zatrzymało.
komentarz 25 czerwca 2020 przez Marcinuq Początkujący (480 p.)

Ok dziękuje za pomoc. Wszystko działalaugh

1 odpowiedź

0 głosów
odpowiedź 25 czerwca 2020 przez BlayUng Nowicjusz (240 p.)

Mi to działa jak zrobię tak:

int pause;
pause=getch();
return 0;
komentarz 25 czerwca 2020 przez Marcinuq Początkujący (480 p.)
To nic nie dało :( nadal się zamyka
komentarz 25 czerwca 2020 przez BlayUng Nowicjusz (240 p.)
A przed zamknięciem coś klikałeś?
komentarz 25 czerwca 2020 przez Marcinuq Początkujący (480 p.)
Enter, żeby zatwierdzić tekst który napisałem

Podobne pytania

0 głosów
2 odpowiedzi 1,569 wizyt
pytanie zadane 11 września 2015 w C i C++ przez C☺ndzi Stary wyjadacz (12,100 p.)
+1 głos
0 odpowiedzi 139 wizyt
pytanie zadane 21 lipca 2020 w C i C++ przez student33 Początkujący (250 p.)
+3 głosów
2 odpowiedzi 2,532 wizyt
pytanie zadane 9 września 2019 w Inne języki przez Mavimix Dyskutant (8,280 p.)

88,364 zapytań

136,964 odpowiedzi

305,691 komentarzy

58,632 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Sklep oferujący ćwiczenia JavaScript, PHP, rozmowy rekrutacyjne dla programistów i inne materiały

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...