C++ Editor ohne Dos-Fenster-Problem in Win

Hallo Ihr,

ich programmiere auf der Uni z.Zt. C++ und habe kein Linux. Gibt es irgendwie die Möglichkeit es hinzubekommen, dass das Dosfenster nach der letzten Eingabe nicht direkt schließt?

Also am Ende des Programmes steht immer return 0; und die Aufforderung dafor wird einfach übersehen.

Z.Bsp.

#include
using namespace std;

int main(int argc, char** argv)
{
cout

ich programmiere auf der Uni z.Zt. C++ und habe kein Linux.
Gibt es irgendwie die Möglichkeit es hinzubekommen, dass das
Dosfenster nach der letzten Eingabe nicht direkt schließt?

Also am Ende des Programmes steht immer return 0; und die
Aufforderung dafor wird einfach übersehen.

Mach einfach direkt bevor das Programm beendet wird irgendeine Tastaturabfrage, z.B.:

#include 
#include 

using namespace std;

void atexit\_callback( void ) {
 string dummy:
 cout \> dummy;
}

int main( int argc, char\*\* argv ) {
 int rueckgabewert;

 atexit( atexit\_callback );

 // mach was, das irgendwie den Rückgabewert festlegt
 // ...

 return rueckgabewert;
}

Das sorgt dafür, dass bei einer normalen Programmterminierung (also main() wird beendet oder das Programm ruft exit() auf) der Callback abgearbeitet wird. Das gilt nicht bei anormaler Terminierung, also wenn das Programm z.B. eine Schutzverletzung verursacht oder eine Exception nicht abgefangen wird.

Hi Andi,
ich weiss nicht, in welcher Umgebung du diese Programme unter Windows schreibst und vielleicht verstehe ich dein Problem auch falsch. Aber bei einem gewöhnlichen C-Programm genügt es normalerweise vor dem return ein getch(); (Zeichen holen) oder kbhit(); (Tastatur betätigt?) einzubauen. Dann wartet das Programm vor dem Beenden auf einen Tastetdruck.
Dazu musst du aber wahrscheinlich einbinden.

Ich hoffe das hilft,
Gruß,
Norbert

Hallo Andreas

ich programmiere auf der Uni z.Zt. C++ und habe kein Linux.

Ich fahre ein Auto und habe aber keinen Trabbi.

Gibt es irgendwie die Möglichkeit es hinzubekommen, dass das
Dosfenster nach der letzten Eingabe nicht direkt schließt?

Gibt es die Möglichkeit, dass der Motor nicht einfach ausgeht?

Also am Ende des Programmes steht immer return 0; und die
Aufforderung dafor wird einfach übersehen.

Es gibt nahezu 10^2 Entwicklungssysteme für C/C++
für „kein Linux“, jedes verhält sich anders.

Bei mir öffnet sich und schließt sich das DOS-Fenster
innerhalb von wenigen Sekunden und es ist schlichweg unmöglich
damit irgendwas zu bearbeiten. Hat da jemand eine Lösung für?

Ich werfe meine Glaskugel an. ich sehe, Du hast MS-Visual-C++
und drückst zur Ausführung auf den Knopf mit
„Pfeilnachunten“ (Go/F5). Drück einfach mal auf den
Knopf links daneben (Execute Program, Ctrl-F5).

Was kann man dagegen tun?

Genau sagen, welches Auto man hat und nachschaun, ob
man noch Benzin im Tank hat :wink:

Grüße

CMБ