C++ - najczęściej zadawane pytania

0wn3r

Były Moderator
Dołączył
Marzec 10, 2007
Posty
1330
Zasady tego tematu:
- temat przyklejony, żeby był widoczny
- każdy użytkownik może dopisać coś od siebie do tego tematu, jeśli uważa, że temat był wielokrotnie poruszany w tym dziale
- proszę nie zadawać tutaj żadnych pytań
- gdy już zdecydujesz się na to, aby coś wyjaśnić, postaraj się to wszystko zmieścić w jednym poście
- dozwolone są posty jedne pod drugim, jeśli piszesz każdy post na inny temat
 

0wn3r

Były Moderator
Dołączył
Marzec 10, 2007
Posty
1330
Problem: stworzyłem program konsolowy, ale po uruchomieniu od razu się zamyka, co mam zrobić?

Odpowiedź: Najprostszym sposobem, aby "zatrzymać" program przed jego wyłączeniem, jest pewna linijka kodu, a jaka? - zaraz to wyjaśnie. Otóż do wyboru masz:

  1. system("pause"); - jest to jedna z kilku rzeczy, które należy unikać pisząc programy w C/C++, dlaczego? - funkcja ta powoduje uruchomienie kilku dodatkowych programów i działa tylko pod Windowsem, jeśli pragniesz więcej informacji, wejdź: http://www.gidnetwork.com/b-61.html
  2. getch(); - jest to drugi, również niezalecany sposób na zatrzymanie programu, a mianowicie aby użyć tej funkcji wymagane jest dołączenie biblioteki conio.h, która jest po prostu przestarzała
  3. curses - biblioteka curses, jest moim zdaniem dosyć dobrym sposobem na rozwiązanie twojego problemu, gdyż biblioteka ta operuje na konsoli, jednakże nie ma 100% pewności do tej biblioteki, gdyż na niektórych komputerach dokonuje zmian na standardowych strumieniach, a na niektórych nie
  4. getchar(); - jest to metoda w 100% lepsza od system("pause"), czy też getch() i nie ma właściwie przeciwwskazań do używania tejże funkcji
  5. najlepszą metoda, moim zdaniem, to po prostu uruchamianie każdej Twojej aplikacji z poziomu cmd.exe - nie będziesz zmuszony używać której kolwiek z tych podanych powyżej funkcji, a Twój program będzie działał poprawnie
// jeśli widzisz, że jakiś temat jest poruszany wielokrotnie - dopisz coś od siebie ;-)
 
Do góry Bottom