我想要的功能結合了功能kbhit()和getch()。
換句話說,我想要程序工作時,如果我按下'q'鍵程序停止沒有暫停,以便接收字符和getch()函數一樣。
我想結合kbhit()的優勢和getch()的優勢。是否有一個函數結合了函數kbhit()和getch()?
我希望你明白我的目的。
我想要的功能結合了功能kbhit()和getch()。
換句話說,我想要程序工作時,如果我按下'q'鍵程序停止沒有暫停,以便接收字符和getch()函數一樣。
我想結合kbhit()的優勢和getch()的優勢。是否有一個函數結合了函數kbhit()和getch()?
我希望你明白我的目的。
kbhit
告訴你是否有人物在等待。 getch
將返回下一個字符,如果需要的話可以返回一個字符。我能想到的兩個唯一的自然組合是如果有一個會返回一個字符,但不會等待如果沒有可用的字符。這很容易做到,因爲你已經有kbhit
和getch
:
/* Returns a character from stdin, if there is one.
* Otherwise, returns -1. */
int getch_nonblocking(void)
{
return kbhit() ? getch() : -1;
}
根據您提到的kbhit
和getch
,您可能正在使用Windows。在這種情況下,您可以嘗試GetKeyboardState
。
對不起。我以爲你在使用詛咒。顯然,你正在使用conio。請看我修改後的答案。 – 2012-03-16 19:39:49
這是_kbhit()和_getch()/ _ getche()形式conio.h。上面的算法不考慮特殊(功能)鍵。 – 2012-03-16 19:50:44
你上面的例子工作正常,但我不明白,沒問題 – 2012-03-16 19:52:00