Witam, napisałem program i chciałem go zakończyć w fajny sposób : gdy skończy się dana funkcja ma się wyświetlacz napis "czy chcesz zakończyć: " użytkownik ma wpisać tak a wtedy program się wyłączy w innym wypadku ma się napisać "Nastąpi reset" i się zresetuje. Trochę szukałem ale nie znalazłem, wiem, że potrzeb Sleep, oraz system ("cls"); Ale nwm jak to złożyć w ładną całość.
Ps.
Sleep po to, żeby program zdążył wyświetlić napis przed zresetowaniem
Czy mógłby ktoś mi pomóc ?
Nie jest to raczej najwyższej klasy rozwiązanie, ale może coś takiego
system("start \"\" \"C:\\\Program Files\\\Notepad++\\notepad++.exe\"");
Cout:
start "" "C:\Program Files\Notepad++\notepad++.exe"
Tylko jeszcze jakoś musisz wyciągnąć ścieżkę do execa lub zahardkodować :(
https://stackoverflow.com/questions/1528298/get-path-of-executable
A. Tworzysz mini-program - launcher, który będzie uruchamiał ten docelowy i w zależności od zwróconego wyniku uruchomi go ponownie, albo się zakończy
B. Podobnie jak w opcji A, z tym, że wszystko dzieje się w jednym programie. Mini-program ląduje w main
, który wywołuje realMain
czyli program docelowy
Ze skąpego opisu sądzę, że to jest to program konsolowy. Dlatego sugerowanie tutaj odpalania kolejny raz programu jest moim zdaniem bez sensu. Jak się pisze wszystko w main'ie to tak jest. Trzeba by przenieść wszystko do klasy np CApp
z metodą run
. W pseudokodzie będzie to wyglądać jakoś tak:
#include "CApp.h"
int main(int argc, char *argv[])
{
CApp App;
App.run();
return 0;
}
W takim przypadku wywołanie metody run
można by wykonywać w pętli po wykonaniu run
można by pytać usera czy chce rozpocząć od nowa. Jeśli nie to wyskakujemy z pętli i gotowe.