我嘗試將程序執行延遲200ms,然後測試在延遲期間是否按下了一個鍵。我該怎麼做呢?使用`sleep()`延時
我嘗試創建一個類似於飛揚的鳥類的簡單電腦遊戲,使用C.我希望用戶有一小段時間(〜200ms)按下一個鍵讓鳥跳躍,否則它會掉下來,但我在執行延遲時遇到了麻煩。
我看過一些論壇[哪裏?]sleep(100)
應該給100ms的延遲,但是當我這樣做的時候,我得到了100秒。
我也嘗試過使用sleep(1/5)
,但函數只接受整數。
此外,我需要能夠測試在200ms期間是否按下了按鍵;我在某處讀[哪裏?]那kbhit
函數可以用於那個,但是我不知道如何使用它。
while(!dead) {
sleep(200); // what do I put here to get 200ms?
if (keyWasPressedDuringWait()){ //what do I put here?
notDeadAnimation():
}else{
dead=true;
deadAimation()
}
}
http://stackoverflow.com/questions/4184468/sleep-for-milliseconds –
搜索[ 'usleep()'](http://linux.die.net/man/3/usleep)或['nanosleep()'](http://linux.die.net/man/2/nanosleep)(第二個是優選的)。 – MBlanc
嘗試睡着。有關更多詳細信息,請參閱「man usleep」。 – elyashiv