Einsteigerprobleme mit C++



  • Hallo!

    Wie kann ich die Konsole dazu bringen, sich nicht sofort nach dem terminieren des Programms zu schließen?

    cu - netchamber



  • Original erstellt von THE_FreaK:
    **
    Schau mal in die conio.h unter dem befehl getch() nach, oder noch besser schau in die FAQ, da steht ne extra Funktion die Standard-konform ist.
    **

    tjaja, wer lesen kann ist halt immernoch klar im vorteil... 😡



  • Original erstellt von netchamber:
    **@ MaSTaH:
    Die Endlosschleife ist drin, damit sich die Konsole nicht gleich wieder schließt. Gibt es dafür eine bessere Lösung?
    **

    Sicher:

    void wait()
    {
        std::cin.clear();
        std::cin.ignore(std::cin.rdbuf()->in_avail());
        std::cin.get();
    }
    


  • Hallo!

    Danke, für die Hilfe (speziell für die Funktion wait() .. )!
    Mir ist noch aufgefallen, dass in sehr vielen Tutorials statt den Funktionen printf und scanf immer cout und cin benutzt werden. Sind diese Funktionen äquivalent zu einander? Oder passiert bei printf und cout was anderes?

    cu - netchamber



  • printf() und scanf() sind überbleibsel aus ANSI C.
    cout und cin sind C++ Klassen (Templates und was nicht noch alles) mit denen du genau das gleiche anstellen kannst, allerdings, wenn du willst auch noch viel mehr. cout und cin sind *streams*, bzw. arbeiten mit ihnen, wobei scnaf und printf "einfache" funktionen sind.



  • cin und cout sind objekte und keine klassen. manche leute lernen den unterschied nie.



  • nich so spitzfindig :p
    was gemeint ist dürfte klar sein, oder? 🙄

    Eine Klasse beschreibt die Eigenschaften gleichartiger Objekte, ein Objektmuster. Ein Objekt ist eine Instanz einer Klasse, eine spezielle Ausprägung, wird erst während der Abarbeitung erzeugt und besitzt genau die beschriebenen Eigenschaften. Eigenschaften gliedern sich in Verhalten und Zustand. Neben den Eigenschaften definiert eine Klasse auch Schritte, die zur Erzeugung und zur Beseitigung ihrer Objekte abgearbeitet werden müssen.

    Sodelle und was is dann die entsprechende Klasse zu cout bzw cin 😕

    [ Dieser Beitrag wurde am 07.07.2003 um 18:06 Uhr von THE_FreaK editiert. ]



  • Sodelle und was is dann die entsprechende Klasse zu cout bzw cin

    Die Templateklassen heißen std::basic_ostream bzw. std::basic_istream. Instanziiert dann: std::basic_ostream<char, std::char_traits<char> > ( = std::ostream) bzw. std::basic_istream<char, std::char_traits<char> > ( = std::istream)

    [ Dieser Beitrag wurde am 07.07.2003 um 18:19 Uhr von HumeSikkins editiert. ]



  • Klassenübersicht siehe hier: http://www.cplusplus.com/ref/iostream/



  • aha! dangeschön 🙂
    *bookmark*


Anmelden zum Antworten