2017-03-20 62 views
-1

我對C++有點新鮮,所以請原諒我有點不習慣。如何等待特定的擊鍵?

有沒有可用於使控制檯暫停的功能,直到按下特定的按鍵?

例子是:

#include <iostream> 

using namespace std; 

int main() 
{ 
    int i = 0; 

    if (specific key pressed) { 
     i = 1; 
    } else if (other key pressed) { 
     i = 2; 
    } 

    cout << i << endl; 

    return 0; 
} 

控制檯應該輸出1,如果右鍵被按下時,並且如果2的另一個關鍵是。

+0

通過「特定的關鍵」你指的是一個特定的字符,或者像一個箭頭鍵的可視化表示什麼? – 4castle

+1

'int i - 0;'沒什麼意義。請停止在此處輸入代碼,並將其從IDE中粘貼。 –

+0

不知道你的控制檯有什麼,我們不知道它是否有可能做到這一點,或者如果有的話,如何使它做到這一點。 –

回答

0

你想要做的事情有點複雜,C++利用了cin流,輸入到控制檯的輸入被輸入到你的程序中。作爲按鍵事件,操作系統可以處理,並且在操作系統之間會有所不同。因此,使用這樣的東西需要用戶按輸入/返回輸入程序接收。

char key; 
std::cin >> key; 
if (key == 'a') { 
    std::cout << 1; 
} 
else { 
    std::cout << 2; 
} 

找到一些答案在這裏How to handle key press events in c++