Escape-Sequenz zum Löschen des Bildschirms auf der Konsole funktioniert nicht!



  • Hi(gh)!

    Nach längerer C++-Abstinenz hat es mich mal wieder gepackt... da ich zur Zeit bei meinem mindestens genauso C++-begeisterten Freund zu Besuch bin, versuchen wir uns gemeinsam an (erst einmal) kleinen Konsolenprogrammen mit Textmenüs, und zwar unter Bloodshed DEV-C++ (ich weiß, heutzutage nimmt man Orwell... aber... never change a running system!).

    Dabei stellte ich fest, dass die Escapesequenz zum Löschen des Bildschirms auf der Konsole, die ich im vorigen Jahrhundert im Zusammenhang mit einem längst vergessenen C++-Compiler für MS-DOS ("RHIDE" oder so ähnlich, er lag dem 1998 erschienenen Buch "Programmieren in C++" von Breymann bei) gelernt hatte, nämlich:

    \033[2J;
    

    offensichtlich auch bei Einbindung von cstdlib von DEV-C++ nicht erkannt wird - in meinem Code steht

    printf("\033[2J;");
    

    angezeigt wird an dieser Stelle aber:

    ...ja so ein Mist aber auch, unter Linux könnte ich jetzt einfach markieren und den angezeigten Text kopieren, unter Windoof geht gar nichts! Ich will mein Linux wiederhaben!

    Jedenfalls wird der Konsolenbildschirm nicht gelöscht und der Cursor auch nicht in der linken oberen Ecke positioniert...

    Was mache ich falsch?

    Bis bald im Khyberspace!

    Yadgar



  • RHIDE ist eine alte auf Konsole basierende IDE - der Compiler dahinter 😕

    Wie du schon schreibst dein Buch ist für DOS und du hast wahrscheinlich kein DOS auf deinem Rechner? Alte Windows bis 98 oder ME könnten auch noch mit den Escapes funktionieren?

    Also schauen was euer aktuelles OS zum Löschen der Konsole empfiehlt und das in das Programm einbauen.

    Nur zum Spass mag euer Buch ja noch zu nutzen sein, aber gerade bei C++ hat sich seit 1998 so viel geändert, das ich einen aktuelleren Lesestoff anrate.

    MfG



  • Du kannst auch in der Windows Konsole Text kopieren, oder was meinst du?

    Vergiss die Escape Sequenzen, nimm ncurses.



  • Für Windows schau dir mal die Improved Console an.


Anmelden zum Antworten