Weiter mit beliebiger Taste ohne Return



  • Hallo,

    ich möchte gerne, dass der Benutzer eine beliebige Taste zum Starten drückt. Mein Problem, cin verlangt ja immer ein Enter, wie kann ich das hinbekommen mit c++ mitteln, dass wirklich ein beliebiger Tastendruck aussreicht?

    Hier mein Beispielcode:

    while(true){
       cin.clear();
       cin.ignore(std::cin.rdbuf()->in_avail());
    
        if(cin.get() == 'x' ){
          break;
        }else{
          continue;
        }
    

    Das er bei de Taste x + Enter rausgeht ansonsten drin bleibt, funktioniert wunderbar, ich möchte aber wirklich ohne Enter fortfahren können.

    Geht das mit C++ mitteln? Oder müsste man da auf c zurückgreifen, dass ich gerne vermeiden würde.

    Gruß

    Betzi



  • @betzi1985 Was wäre in diesem Fall für dich C?



  • @DirkB

    Also eine Bibliothek die in C vorkommt. Ich bin Anfänger und hatte letztens mal ein beispielprogramm gepostet, da wurde mir gesagt, ich verwende zu viel C zu wenig C++ deswegen würde ich getchar(); vermeiden, weil es eine C Bibliothek ist. Wobei soweit ich weit getchar auch am Ende ein Enter haben möchte



  • @betzi1985
    Das bezieht sich meist auf die Verwendung von C-Arrays statt der besseren Typen von C++ (string, vector)

    Aber schau mal bei http://www.cplusplus.com/forum/general/16335/ nach.


Log in to reply