Problem bei den ersten Schritte in C/C++



  • Lurchie schrieb:

    In Eurem C++-Code sehe ich davon aber gar nichts... Wieso???

    Einfache Antwort: Weil ein (Konsolen-)Programm nach Erledigung seiner Arbeit den User nicht noch weiter belästigen muss 😃



  • Wenn ich ehrlich bin, ist das eine sehr gute Frage.

    Kann ich leider nicht wirklich beantworten. Ich habe auch erst vor
    ca. 1 1/2 Monaten mit C++ angefangen, ein sogenanntes Fernstudium.

    In den Studienheften steht jedesmal dieser Befehl so drin.
    Eine genaue Erläuterung warum gerade eine "50" drin stehen soll, hab
    ich bis heute nicht erhalten (oder ich hab es überlesen 😕 ).
    Bis heute ist mir leider auch noch keine andere Möglichkeit bekannt,
    damit die Konsole nicht sofort geschlossen wird.

    Gruß

    Lurchie :xmas2:

    P.S. Jetzt weiss ich wenigstens das Ihr Euch auf's wichtige beschränkt! 😉



  • LordJaxom schrieb:

    Einfache Antwort: Weil ein (Konsolen-)Programm nach Erledigung seiner Arbeit den User nicht noch weiter belästigen muss 😃

    Dann wäre ja die einzige logische Schlussfolgerung für ein "funktionierendes" Programm keine Fehlermeldung vom Compiler. Verstehe ich das Richtig???

    Okay, jedem das Seine! 🕶



  • Lurchie schrieb:

    Bis heute ist mir leider auch noch keine andere Möglichkeit bekannt,
    damit die Konsole nicht sofort geschlossen wird.

    Dann lies dir mal diesen Beitrag durch, da stehen ein paar Alternativen.

    Lurchie schrieb:

    LordJaxom schrieb:

    Einfache Antwort: Weil ein (Konsolen-)Programm nach Erledigung seiner Arbeit den User nicht noch weiter belästigen muss 😃

    Dann wäre ja die einzige logische Schlussfolgerung für ein "funktionierendes" Programm keine Fehlermeldung vom Compiler. Verstehe ich das Richtig???

    Nein, außerdem sollte es auch noch die Aufgabe korrekt erfüllen, die der Autor gestellt hat.



  • Vielen Dank für den Hinweis.

    Werde ich mir gleich mal zu gemühte führen, damit ich meinen Horizont erweitern kann.



  • Die Schwierigkeit ist ja die, das ein HelloWorld! nicht davon ausgehen kann, das es in einem temporären Fenster gestartet wird, welches sich bei Programmende auch noch schliesst. Was ist wenn man das Programm aus einer dauerhaften bereits geöffneten Konsole startet??? Dann ist diese Tastenabfrage zum Schluss einfach nur witzlos.

    Bei VisualC++ 2003 (wird auch beim 2005er so sein) beendet sich die Konsole z.B. nicht sofort, wenn ich ein HelloWorld Programm aus der IDE starte. Da kommt nämlich zum Schluss ein "Press any key to continue", welches ich nicht eingebaut habe!!!

    Also, warum soll in einem HelloWorld eine Bestätigung am Ende kommen?



  • Artchi schrieb:

    Was ist wenn man das Programm aus einer dauerhaften bereits geöffneten Konsole startet??? Dann ist diese Tastenabfrage zum Schluss einfach nur witzlos.

    Da stimme ich Dir ja auch zu. In diesem Fall ist es witzlos...

    Artchi schrieb:

    Bei VisualC++ 2003 (wird auch beim 2005er so sein) beendet sich die Konsole z.B. nicht sofort, wenn ich ein HelloWorld Programm aus der IDE starte. Da kommt nämlich zum Schluss ein "Press any key to continue", welches ich nicht eingebaut habe!!!

    Kann in diesem Fall leider nicht mitreden da ich den Borland C++ Builder 6.0 benutze und da kommt dieser Hinweis leider nicht.
    Aber schließlich geht es nicht um ein HelloWorld-Programm, sondern um die Tatsache das sich die Konsole nicht einfach schließt, wenn ich dies auch nicht möchte.

    Gruß

    Lurchie :xmas2:



  • Artchi schrieb:

    Bei VisualC++ 2003 (wird auch beim 2005er so sein) beendet sich die Konsole z.B. nicht sofort, wenn ich ein HelloWorld Programm aus der IDE starte. Da kommt nämlich zum Schluss ein "Press any key to continue", welches ich nicht eingebaut habe!!!

    Das ist in VS 2005 definitiv nicht der Fall, was einfach nur über-idiotisch ist. Schon deswegen, weil man in einem Einführungstutorial im ersten Quellcode (!) sowas wie 'std::cin.rdbuf()->in_avail()' ... erwähnen muss, was natürlich niemand versteht.

    Ärgerlich, sehr ärgerlich.



  • Konrad Rudolph schrieb:

    Das ist in VS 2005 definitiv nicht der Fall,

    Nicht ganz korrekt. Wenn Du das Projekt mit der Play-Taste (Debug) startest, passiert so etwas tatsächlich nicht. Aber starte dasselbe Projekt mal mit dem Menüpunkt "Starten ohne Debuggen". Siehe da: "Drücken Sie eine beliebige Taste..."

    Ziemlich idiotisch das, oder? 😉



  • Weil man vielleicht beim Debug-Starten davon ausgeht, das man irgendwo einen Breakpoint gesetzt hat? Keine Ahnung. Aber ich starte meistens mit Strg+F5 (Run) und meine Konsolenprogramme bringen am Ende enstprechende Tastenabfrage.


Anmelden zum Antworten