C++ と Ncurses を使用した動作のプログラミングに問題があります。私はパックマンをプログラミングしていますが、主な問題は、最後に押されたキーだけが必要なことです。
usleepを使用すると、スリープ中に押されたすべてのキーが保存され、それが順番に処理されます。
アイデアをありがとう。
何を試しましたか?
あなたが達成しようとしていることを私が正しく理解していれば、このようなものが機能するはずです:
int t = your_delay;
while (t --> 0)
{
sleep(1);
c = getch();
}
本当にマイクロ秒までの時間を計る必要がある場合、これは最善のアプローチではないかもしれませんが、ある程度の許容範囲がある場合は、これで十分です。
遅延なしモードですか?もしそうなら、これはうまくいくかもしれません:
usleep(your_delay);
last_key = ERR;
while ( (key=getch()) != ERR ) {
last_key = key;
}
// "last_key" now holds most recent key, if there was one, else ERR