Funktion -->Die Konsole schliesst zu schnell
-
Hallo Leute,
ich bin mir sicher das ihr mir helfen könnt...
Ich habe aus meinem schönen leerbuch eine Aufgabe abprogrammiert und
jezt habe ich das Problem, das ich die Ausgabe nicht sehe, weil sich das
Fenster (Konsole) nach der Fertigstellung gleich wieder schliesst. Irgendwie gibts doch da eine Funktion, oder??Vielen Dank
Euer Visual Newbie// Dateiname: Funktion // Erstellen eigener Funktionen #include <iostream> using namespace std; void nix(void); //Funktionsprototyp void xMal(int); // -------"-------- long flaeche (int,int); // --------"------ void nix(void) { cout << "\nFunktion nix"; } int main() { nix(); xMal(17); cout << flaeche(3,7); return 0; } void xMal(int x) { for (int i=1; i<=x; i++) cout << "*"; return; } long flaeche(int a, int b) { return static_cast<long>(a*b); }
-
Aus der FAQ:
Sleep(millisekunden);
system("pause"); //<---dreckig
getch(); //<--<conio.h>
-
Habe es mit system pause versucht und mit getch, klappt nicht....
Was ist mit Sleep milisikunden????Wo schreib ich das hin???
-
Womit arbeitest du?
Bei Visual C++ (Express) muss man _getch() verwenden.Denk an die Includes
viel Spaß noch
-
Schreibe es vor return 0; in int main
Sleep(1000); <--windows.h includen 1 Sekunde Wartezeit bevor es weitergeht im Code.
getch(); <--wartet auf die Eingabe von einem einzellnen Zeichen/conio.h
system("pause"); <--iostream.h / unsauber / cmd-befehl
-
Mit Sleep funktioniert es!!
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum DOS und Win32-Konsole verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Hi,
das geht doch mit cin.get(); vor return 0;
Wenn nicht wärs nett wenn ihr eben kurz erklären könntet wieso es nicht gehtthx
Mfg Kim
/edit: Ich hatte gerade glat die gloreiche Idee es doch eben selbst auszuprobieren
also bei mir klappt es mit cin.get(); bzw. nur mit cin.get();(brauch das bei mir bei jeder Programmierung), da dann auch gleich zu meiner neuen Frage
Wie müssen einige cin.get(); vor return 0; schreiben damit sich das Programm nicht sofort schließt udn warum andere nicht?
Würd mich mal Interessieren.
Hoffe mir kann geholfen werdenthx
Mfg Kim
-
Erstens: Schau dir mal den FAQ-Beitrag zu diesem Thema an - da findest du auch die Alternativ-Version zu cin.get() in C.
Zweitens: Wenn du das Programm von Kommandozeile aus aufrufst, bleiben seine Ausgaben am Ende auf dem Bildschirm stehen (da kann es dir egal sein, ob es im Hintergrund noch auf Eingaben wartet oder schon beendet ist). Wenn du es in Windows per Doppelklick startest, wird das Konsolenfenster sofort nach Programmende geschlossen - in diesem Fall brauchst du cin.get(), um die Ausgaben noch lesen zu können.