Automatisches Schließen eines Konsolenprogrammes "komplett" verhindern
-
Danke, tolle Lösung!
Wenn ich aber <iostream> weglasse, klappt dein Code genauso
Wieso? Und wozu brauche ich das using namespace std?? Wenn ich das weglasse, geht der Code immernoch!
Und wozu die Klammern bei der While-Schleife? Wenn ich die weglasse, und stattdessen ein Semikolon setze, geht's ja auch noch!
Und wozu brauche ich das return 0? Wenn ich das weglasse, geht's tatsächlich AUCH NOCH!!
Ich zeig dir mal meinen verkürzten Code:
int main() { while(true); }
Und jetzt sei ruhig, und spuck nicht so große Töne...
-
@mikey: Das nennt man aktives mobbing
-
Ich hab mein Post mal editiert, da hatte ich noch mehr Fragen...
-
Aber ich habe keine 'windows.h":
P.S.: Wo gibt es eine <windows.h> und wofür ist die? Brauch ich die auch auf meinem Rechner?
Hat die eigentlich was mit dem Betribstsystemm zu tun oder nur mit Fenstern?
-
Ich glaub' ich bin jetzt tatsächlich dümmer als bevor ich diesen thread zu lesen begonnen hab.
Das hat noch keiner geschafft in diesem Forum.
-
Nichtsahnena schrieb:
Aber ich habe keine 'windows.h":
P.S.: Wo gibt es eine <windows.h> und wofür ist die? Brauch ich die auch auf meinem Rechner?
Hat die eigentlich was mit dem Betribstsystemm zu tun oder nur mit Fenstern?
Ja, die <windows.h> enthält die WinAPI-Funktionen und existiert nur auf Windows-Systemen. In DaNemeziz' ursprünglichen Beispiel brauchte man die für die GetAsyncKeyState()-Funktion.
-
Hallo ich dachte das passt heir jetzt grad ganz gut rein deshalb hab i nich extra en Thread aufgeamcht
hoffe das geht in Ordnung..habe genau das andere Problem und zwar kommt bei mir am Ende immer Bitte eine Taste drücken...
was ich aber gar nicht mehr will hat jemand ne Idee?also ich will mit getch(); auf ne Taste warten wenn ich die aber drücke kommt danach nochmals
die Aufforderung ne Taste zu drücken was ich ja nicht will.Das getch will ich nicht wegnehmen da ich iegentlich keinen Text haben mochte bzw will dass es sofort schliesst
und exit(); geht auch nicht kommt dennoch die Tastendruck aufforderungwäre um einen Tipp sehr Dankbar^^
greetz sand13r
-
Was für einen Compiler verwendest du denn? (manche IDE's sorgen selber dafür, daß das Konsolenfenster offen bleibt, dann müsstest du in den Compiler-Optionen nachsehen, ob und wie du das abschalten kannst)
-
Danke für die schnelle Antwort.
Ich arbeite mit dem MS Visual C++ 6.0,
bisher hab ich eigentlich nur mit dem Borland Compiler und da gings immer wunderbar (au mit dem dev gehts meines wissens)
das es am BS leigt könnte auch noch liegen oder? wobei ich eigentlich das normale XP-Prof hier habe..danke trotzdem nochmal für die schnelle Antwort
(super Froum)
greetz sand13r
-
@DaNemeziz
So als ich dein "Tutorial" gesehen habe, bin ich vor Lachen fast vom Stuhl gefallen! Ich werde jetzt deine gesamtes "Tutorial" auseinandernehmen und alles richtigstellen!Als ich ein bisschen durchs C++ Forum gestöbert bin hab ich viele Threads gefunden in denen gefragt wurde ob man das
automatische Schließen einer Konsole komplett verhindern kann. Die Antworten waren meist "nein", was glücklicher Weise nicht
stimmt.1. Wie kommst du denn auf diese Idee? Liefer mal einen Link und stell nicht irgendwelche Gerüchte auf!
So sieht bei mir ein gewöhnlicher C++ Script aus:
2. Die Stelle mag ich ganz besonders! Sag mal weißt du überhaupt den Unterschied zwischen einer Hochsprache (C++, Pascal) und einem Skript (JavaScript, PHP) ist?
#include <windows.h> #include <iostream> using namespace std; int main() { cout << "Automatisches Schließen eines Konsolenprogrammes verhindern!"; while(true) { while(GetAsyncKeyState(0x07) < 0) { return 0; } } }
3. Was ist das denn? Wieso benutzt du nicht noch mehr Headerfiles und rufst zum Spaß nicht noch mehr Funktionen auf! Ich meine man kann für den gewünschten Effekt auch 1000 Funktionen aufrufen. Die Frage ist nur, was das bringt!
Es wurde jetzt schon ein paar mal geschrieben, aber ich werde es trotzdem nochmal zeigen.
int main() { while(1) ; return 0 ; }
Dieser Code reicht völlig aus um den gewünschten Effekt mit jedem Compiler kompilieren zu können.
Man schreibt "return 0;", weil main() einen Rückgabewert vom Typ Integer hat. Man kann es aber bei manchen Compilern auch ohne kompilieren.
Ich hoffe ich konnte ein bisschen weiterhelfen (oder auch nicht [?]).
@Moderatoren: Ich denke, dass diese kleine Tutorial auch noch sehr gut hier her passt.4. Helfen? Oh mein Gott, das war auf einer Skala von 1 bis 10 gar nichts, denn es liegt im negativen Bereich. Mein Freund, das war ein Schritt zurück und nicht vor. Wenn du etwas nicht weißt oder dir nicht sicher bist, dann schreibe nächste mal nicht "Tutorial"! Wenn Leute nach diesem Problem im Internet suchen, stoßen sie darauf und es verbreiten sich falsche Informationen!
Trotzdem mit freundlichen Grüßen
WilMen