press any key to continue



  • Hallo Community 🙂

    Habe vor ein paar Wochen erst angefangen mich mit C auseinanderzusetzen (wegen Studium, komm nich drum herum *g*). Sind nun grade dabei recht einfache Programme zu schreiben. Nun will ich in mein Programm eine Schleife einbauen, die solange wiederholt wird, bis eine Taste gedrückt wird (irgendeine, muß keine bestimmte sein).
    Wie mach ich das am besten ?

    schonmal danke im Vorraus
    Niels



  • Ja hmm... bei "hausaufgaben" helfe ich nich so gerne.
    Aber nagut.

    do
    {
    //...
    }while(getch()=="Die Taste");
    

    so könnte es gehen.



  • do
    {
    //...
    }while(getch()=="Die Taste");
    

    Hier würde er doch bei jedem Gurchgang anhalten und auf ein Zeichen für das getch() warten, oder?
    Ich kannte eine Funktion die überprüft, ob ein Zeichen im Tastaturpuffer vorliegt, dadurch würde des Anhalten der Schleife verhindert, leider fällt und fällt sie mir nicht mehr ein.



  • Wie wäre es mit

    while(!kbhit())
    {
    ....
    }



  • quizzmaster,

    kann verstehen wie du denkst, es ist aber nicht meine "Aufgabe" da so eine Schleife reinzuprogrammieren. Möchte es dadurch nur etwas schöner und übersichtlicher machen, sonst rasselt das Programm so vor sich hin 😉

    Danke für den Vorschlag, werds mal einbauen.

    bis denne
    Niels



  • nochmal ich.
    habs mal eingebaut.
    funktioniert, obwohl mir der Compiler folgende Meldung gibt " Warning: Comparison between Pointer and Integer".
    Is das irgendwie schlimm ? 😮 😉



  • Du mußt "Die Taste" (hast du das wirklich so abgeschrieben? lol) durch ein Zeichenliteral, das für die Taste steht, ersetzen, zb: (getch() != ' ') für die Leertaste. Die Warnung kommt, weil getch() ein int zurückgibt, "Die Taste" aber ein Stringliteral und damit vom Typ char* ist.


Anmelden zum Antworten