Willkommen |
|
myGully |
|
Links |
|
Forum |
|
|
|
 |
25.12.10, 21:54
|
#1
|
Anfänger
Registriert seit: Sep 2008
Beiträge: 2
Bedankt: 1
|
C++ Konsole schließt sich sofort
Ich hab heute angefangen C++ zu lernen und ich hab auch schon gleich mein erstes Problem bei Hello World
Laut dem Buch sollte sich die Konsole nicht sofort schließen, es sollte noch: Drücken Sie eine beliebige Taste... stehen.
Bei mir schließt sich die Console allerdings sehr schnell, so das ich nichtmal die Hello World anzeige lesen kann.
Hier ist der Code:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World" << endl;
}
|
|
|
26.12.10, 00:42
|
#2
|
Freizeit-Troll :>
Registriert seit: May 2009
Beiträge: 2.269
Bedankt: 611
|
Das liegt daran, dass dir das Kommando fehlt, das dem Programm sagt, dass es auf einen Tastendruck warten soll.
Je nachdem ist es getch() oder getchar() oder System ("pause");
|
|
|
26.12.10, 10:05
|
#3
|
Macianer
Registriert seit: Apr 2010
Beiträge: 139
Bedankt: 49
|
Nein das stimmt so nicht @ThePinsel. Das Programm kann sich zwar beenden, allerdings sollte, wie der Threadersteller schon richtig sagte, am Ende NACH der Programmausführung noch ein "Taste drücken zum beenden" kommen.
An den TE: fehlt da vll. noch ein Return 0; nach der cout-Zeile? Daran kann es aber eigentlich nicht liegen *gg*....ich bin in ein paar Stunden zuhause, dann kann ich dein Programm mal kompilieren und testen!
Grüße MH
|
|
|
26.12.10, 12:03
|
#4
|
Anfänger
Registriert seit: Jul 2010
Beiträge: 30
Bedankt: 12
|
Hi,
also bei mir tritt kein Fehler auf.
Wie startest du denn dein kleines Programm?
Beim einfachen "Doppelklick" verschwindet es so natürlich.
Unter einen "DOS-Eingabeaufforderungs-Fenster" siehst du die Ausgabe in einer Zeile.
(Dein Beispiel-File sei in C:\ und heisse helloworld.exe)
Ausführen: cmd
-------------------
C:\helloworld.exe
Hello World!
C:\
-------------------
Du kannst eine "cint- Abfrage" nach z.B. einer Zahl machen um das Fenster
mit der Eingabeaufforderung anzuhalten.
Code (mit Ergänzung):
#include <iostream>
using namespace std;
int main()
{
int n;
cout << "Hello World!" << endl;
cout << "Bitte Zahl eingeben:";
cin >> n;
return 0;
}
Eine Messagebox geht noch etwas anders.
Grüße Eule66
|
|
|
26.12.10, 13:09
|
#5
|
Anfänger
Registriert seit: Sep 2008
Beiträge: 2
Bedankt: 1
|
Danke für die Hilfe,
wenn ich getchar() mache bleibt die Konsole solange offen bis ich eine Taste drücke. ---> hat geklappt.
@Madhatter: Wie du schon erwähnt hast liegt es nicht an dem return 0
Die Methode von Eule hat auch geklappt
|
|
|
26.12.10, 14:03
|
#6
|
bla
Registriert seit: Mar 2010
Beiträge: 312
Bedankt: 302
|
Wenn du mit Visual Studio arbeitest, starte dein Programm mit ctrl F5.
|
|
|
27.12.10, 07:27
|
#7
|
Banned
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 824
Bedankt: 640
|
Zitat:
Zitat von Madhatter3333
Nein das stimmt so nicht @ThePinsel. Das Programm kann sich zwar beenden, allerdings sollte, wie der Threadersteller schon richtig sagte, am Ende NACH der Programmausführung noch ein "Taste drücken zum beenden" kommen.
An den TE: fehlt da vll. noch ein Return 0; nach der cout-Zeile? Daran kann es aber eigentlich nicht liegen *gg*....ich bin in ein paar Stunden zuhause, dann kann ich dein Programm mal kompilieren und testen!
Grüße MH
|
Nein das stimmt so nicht @Madhatter3333 *scnr*
Wo sagst du dem Programm denn das er auf nen Tastendruck warten soll? Programm startet gibt nen Text aus und dann? Richtig - nichts, also beenden. Und falls du es nicht in cmd.exe ausführst schließt windows das Konsolenfenster nach dem Beenden des Programms.
Und scheiße return 0? was macht daas in main()? beenden und dem System den Fehlercode mitteilen, sozusagen zurückspringen 
"Kompilieren und testen" Du verarschst uns doch, oder?
|
|
|
Forumregeln
|
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren
HTML-Code ist Aus.
|
|
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:55 Uhr.
().
|