kbhit()
-
wieso soll ich das benutzen?
char c; while (true) { while (!kbhit ()); c = getch (); cout << "Taste: " << c << " gedrückt!" << endl; }
ohne
while (!kbhit ());
gehts doch auch?
-
ohne das ist es sogar besser
-
Du wartest auf einen Tastendruck mit !kbhit()? Warum nicht gleich getch()?
MfG SideWinder
-
Das ist ja die Frage: WIESO soll ich das benutzen, gibts da nen Grund/Vorteil etc...?
-
Ein Grund das zu benutzen kann z. B. sein, dass du am Bildschirm etwas anzeigst, solange bis eine Taste gedrückt wird. Ein simples Beispiel wäre ein Bildschirmschoner, der irgendwelche Zeichen auf den Bildschirm erscheinen lässt. Wenn sich jedoch nichts rührt (am Bildschirm oder keine Hintergrundberechnungen stattfinden) bis eine Taste gedruckt wird, dann kann man while(!kbhit()) weglassen, weils einfach überflüssig ist.
-
k, thx
-
Oder du willst mal ein kleines Spiel programmierung wie z.b.: snake, da brauchst du kbhit um zu überprüfen ob er überhaupt was gedrückt hat, bei getch würde er dann ewig lang auf einen Tastendruck warten! Oder du willst doch mit Super Mario auch währendem Springen nach links oder rechts gehen können sonst würde er ja nur gerade in die luft springen, so was kann man auch damit machen!