Wie ändere ich das "Drücken Sie eine belibigetaste..."



  • Gibt es eine möglichkeit das bei "Drücken Sie eine belibigetaste..."

    was anderes steht oder man das CMD Fenster nur schliessen kann wenn man ein bestimmtes Wort eingibt ?

    Wenn ja dann wäre ich sehr dankbar wen Ihr mir es erklären könnt

    mfg Plany



  • Plany schrieb:

    ..."Drücken Sie eine belibigetaste..."

    Gegenfragen:
    Was meinst Du, wer für diesen Text verantwortlich ist?
    Hat das noch etwas mit C++ zu tun?
    Bist Du damit im richtigen Forum?


  • Mod

    Gehe ich recht in der Annahme, dass du jetzt irgendwo ein system("PAUSE") in deinem Programm hast? Möglicherweise bietet der PAUSE-Befehl die Möglichkeit des Feintunings, musst du mal gucken. Besser und portabler wäre es, wenn du dir so etwas selber schreibst, z.B. so

    int main()
    {
     // Dein Programm ...
    
     // Hier stand früher system("PAUSE")
      cout << "ENDE zum Beenden\n";
      for (string passwort; passwort!="ENDE"; cin >> passwort);
    }
    


  • Wenn du von dem Befehl system("pause"); ausgehst, bist du hier falsch...



  • SeppJ:
    Sehr benutzerfreundlich 😃



  • Plany fragte doch nach solch einer Lösung wie die von Sepp 👍



  • SeppJ schrieb:

    int main()
    {
     // Dein Programm ...
    
     // Hier stand früher system("PAUSE")
      cout << "ENDE zum Beenden\n";
      for (string passwort; passwort!="ENDE"; cin >> passwort);
    }
    
    int main()
    {
      // Dein Programm ...
    
      // Hier stand früher system("PAUSE")
      cout << "CTRL-C zum Beenden\n";
      for ( string password;; cin >> passwort );
    }
    

    😃



  • f.-th. schrieb:

    Plany fragte doch nach solch einer Lösung wie die von Sepp 👍

    Eigentlich hat Sepps Lösung nicht viel mit der Frage zu tun. 😉



  • #include <iostream>
    #include <string>
    
    void pause(std::string const& message)
    {
      std::cout << message;
      std::cin.ignore(0xDEADBEEF);
      std::cin.get();
    }
    
    int main()
    {
      pause("Bitte rollen sie mit dem Kopf ueber die Tastatur ...");
    }
    


  • hmpf schrieb:

    f.-th. schrieb:

    Plany fragte doch nach solch einer Lösung wie die von Sepp 👍

    Eigentlich hat Sepps Lösung nicht viel mit der Frage zu tun. 😉

    Dann lern mal Fragen lesen.



  • Wenn du das hier meinst:

    system("pause");
    

    Kannst du die Ausgabe einfach ins "Nichts" umleiten:

    system("pause>nul");
    

    Dann noch einen eigenen Text:

    #include <iostream>
    int main()
    {
    system("pause>nul");
    std::cout << "Wenn sie eine beliebige Taste drücken, wird das Programm beendet");
    return 0;
    }
    

    Sauberer ist aber die Lösung:

    #include <iostream>
    #include <conio.h>
    int main()
    {
    std::cout << "Wenn sie eine beliebige Taste drücken, wird das Programm beendet");
    while(!kbhit());
    return 0;
    }
    

    Die Fu1nktion kbhit() überprüft ob eine Taste gedrückt ist.



  • Die Fu1nktion kbhit() überprüft ob eine Taste gedrückt ist.

    Und so portabel wie Popel.
    Wieso nicht einfach cin.get() ?



  • rmpf schrieb:

    hmpf schrieb:

    f.-th. schrieb:

    Plany fragte doch nach solch einer Lösung wie die von Sepp 👍

    Eigentlich hat Sepps Lösung nicht viel mit der Frage zu tun. 😉

    Dann lern mal Fragen lesen.

    Weder sorgt Sepps Lösung dafür, dass bei "Drücken Sie eine belibigetaste..." etwas anderes steht noch sorgt sie dafür, dass man cmd nur mit der Eingabe eines bestimmten Wortes schließen kann.

    Ich bin jedoch sicher, dass auch du irgendwann deine kindlich naive Leseart trainieren und meinem scharfen analytischen Auge angleichen kannst. 😉



  • Ethon schrieb:

    Die Fu1nktion kbhit() überprüft ob eine Taste gedrückt ist.

    Und so portabel wie Popel.
    Wieso nicht einfach cin.get() ?

    ups 😞



  • hmpf schrieb:

    rmpf schrieb:

    hmpf schrieb:

    f.-th. schrieb:

    Plany fragte doch nach solch einer Lösung wie die von Sepp 👍

    Eigentlich hat Sepps Lösung nicht viel mit der Frage zu tun. 😉

    Dann lern mal Fragen lesen.

    Weder sorgt Sepps Lösung dafür, dass bei "Drücken Sie eine belibigetaste..." etwas anderes steht noch sorgt sie dafür, dass man cmd nur mit der Eingabe eines bestimmten Wortes schließen kann.

    Der Hinweistext ist geändert und das Programm beendet sich erst nach der Eingabe von ENDE, also was hast du für ein Problem damit? Wer natürlich unbedingt der Meinung ist, auf system("pause"); angewiesen zu sein,...

    @JP: Bei deinem ersten Beispiel solltest du mal die Reihenfolge überdenken 😉



  • CStoll schrieb:

    Der Hinweistext ist geändert und das Programm beendet sich erst nach der Eingabe von ENDE, also was hast du für ein Problem damit? Wer natürlich unbedingt der Meinung ist, auf system("pause"); angewiesen zu sein,...

    "Der" Hinweistext ist nicht geändert, sondern es wird einfach etwas völlig anderes gemacht und das cmd Fenster kann ich ohne Eingabe einfach wegklicken.

    Aber ihr braucht nicht weiter auf mich einzugehen. Vermutlich hat der Threadstartet es schon so gemeint wie der Sepp, auch wenn die Frage sich, genau genommen, anders anhört.



  • hmpf schrieb:

    "Der" Hinweistext ist nicht geändert

    Mit Hinweistext war, glaube ich, die Frage gemeint.
    Die wurde tatsächlich geändert,
    und Sepps Lösung ist genau die Antwort auf die Frage 😉



  • Plany schrieb:

    Gibt es eine möglichkeit das bei "Drücken Sie eine belibigetaste..."

    was anderes steht oder man das CMD Fenster nur schliessen kann wenn man ein bestimmtes Wort eingibt ?

    mfg Plany

    Okay für Erbsenzähler 😃
    Der Text "belibigetaste..." kommt üblicher weise nicht. Da kommt ein anderer Text -> also Teil vor oder schon gelöst 👍
    bleibt:
    oder man das CMD Fenster nur schliessen kann, wenn man ein Passwort eingibt.

    Aber ich kann ja nicht lesen 😃

    Nobody is perfect - Ich auch nicht 😉

    Jungs ihr seid perfekt 🕶



  • f.-th. schrieb:

    Okay für Erbsenzähler 😃
    Der Text "belibigetaste..." kommt üblicher weise nicht. Da kommt ein anderer Text -> also Teil vor oder schon gelöst 👍

    Und für die ganz genauen Erbsenzähler, der Text kommt da:

    Drücken sie eine beliebige Taste...
    

  • Mod

    Meine Güte sind hier Kleinkrämer unterwegs. Zu einer Frage gehört auch zu verstehen, was der Fragesteller wohl wirklich wissen will und nicht die Antwort zu geben die 100% korrekt zur Frage passt, insbesondere wenn klar ist, dass sich der Fragesteller nicht richtig ausdrücken kann. Einige Leute hier würden wohl auf die Frage "Können Sie mir bitte sagen, wie spät es ist?" wohl mit Ja/Nein antworten.

    Bitte zurück zum Thema, wenn es noch etwas zu sagen gibt.


Anmelden zum Antworten