Programm endet automatisch
aus WB Wiki; freien Wissensdatenbank rund ums Thema Computer
Es wird immer und immer wieder gefragt, warum sich ein Konsolenprogramm unter Windows sofort (bzw. nach vollendeter Eingabe) wieder schließt.
Die Antwort ist relativ einfach: Das Programm schließt sich, weil die Ausführung beendet ist.
Um das zu verhindern kann man folgende Codes benutzen (es gibt natürlich sehr viele Lösungen - die folgenden sind nur ein paar davon).
Die folgenden Beispiele sind für C++:
1) #include <stdlib.h> system("PAUSE");
oder
system("PAUSE > NUL") am Ende der main-Funktion einfügen. (ACHTUNG: dieser Code ist nur für Windows, da das PAUSE-Programm auf anderen Systemen nicht existiert)
2) #include <conio.h> getch(); Am Ende der main-Funktion einfügen. (ACHTUNG: der Header conio.h und die in ihm deklarierte Funktion getch() sind kein Standard - dieser Code wird auf nicht-Windows-Systemen nicht compilieren)
3) #include <stdio.h> getc(stdin); Am Ende der main-Funktion einfügen. (Diese Variante sollte auf allen Systemen funktionieren, wartet aber gezielt auf das Drücken der ENTER-Taste - deshalb habe ich diese Methode zuletzt aufgeführt)
4) #include <iostream.h> cin.get(); Am Ende der main-Funktion einfügen. (ACHTUNG: iostream macht euer Programm sehr groß. Wenn ihr iostream jedoch sowieso einsetzt macht das natürlich keinen Unterschied. Sollte auf allen Systemen funktionieren)
Diese Werte sind für C# (C-Sharp):
Console.ReadLine() Console.ReadKey() Console.Read()
Diese Werte sind für die Programmiersprache "Batch" unter Windows:
PAUSE (Beim Source Code, am Ende des Codes einfügen)