# C++  Konsole verschwindet sofort



## miwe23591 (2. März 2008)

Also ich habe heut mit der C++ Programmiersprache angefangen. Ich interssiere mich sehr fürs Programmiren und beherrsche auch schon einige andere Sprachen. 
Ich verwende für C++  Visual C++ 2008 Express Edition. Vorher haben ich Dev-c++ verwendet, dort trat aber das Problem auf, dass die Konsole, die mein Ergebnis ja zeigen sollte (das legendäre HelloWorld! Programm), nach einem Bruchteil einer Sekunde wieder verschwand. Dann hab ich auf den Visual C++ gewechsel, aber auch dort herrscht das gleiche Problem. Eine Freundin von mir, die sich sehr gut mit C++ auskennt, hat einiges Versucht und auch im Quelletext einige Eingabeaufforderungen eingebaut (so das er ja auf eine Einagebwarten müsste), sowie auch programmpausierende Befehle eingesetzt. Aber alles mit dem gleichen Ergebniss. Die Konsole verschwindet sofort wieder.
Wo dran liegt es, und wie kann ich das beheben ?
Wäre Dankbar für euere Hilfe

mfg Omnibus23591 /  miwe23591


----------



## Topia (2. März 2008)

der Befehl    cin.get();    fehlt damit verhindert man, dass die Konsole sofort schließt.


----------



## miwe23591 (2. März 2008)

Wo  muss ich diesen Befehl den setzten ? 
Und warum wir in dem Tutorial nicht auf diesen Befehl hingewiesen ?
Und außerdem wenn ich im Quelltext eingebe, dass ich einen Wert eingeben möchte, schließt sie sich trotdem,  obwohl sie ja eigentlich auf  meine Eingabe warten müsste.


----------



## Topia (3. März 2008)

#include<iostream>
    using namespace std;

    int main()
    {
      cout<<"Hallo Welt\n";
      cin.get();
    }


----------



## XeoX (3. März 2008)

Also!
1. Bitte benutze bevor du eine Frage stellst einmal die Suchfunktion des Forums, aus diese Frage wurde schon öfter geantwortet!

2. Die Eingabe du machst wird nicht direkt in die Variable geschrieben sondern vor in einem Puffer gespeichert und dann erst geschrieben!
Es bleibt (meist) das Enter im Eingabepuffer und wenn du erneut eine Abfrage machst wird nur das Enter aus diesem Puffer genutzt!

Zwei möglichkeiten:
Erstens nach jedem Einlesen, leers du den Eingabepuffer (Besser):
fflush(stdin);

Zweitens:
Du baust die am Ende des Programs noch einen cin.get() ein also Zweimal, dann nimmt das erste den Rest aus dem Puffer und der Zweite Hällt das Programm an!

3. Bei weiteren Problemen gewöhne dir doch dann bitte an den Quelltext mit Online zu stellen, das hilft uns dann schnell er zu sehen wo das Problem liegt! Danke!

Gruß XeoX


----------

