我在窗戶上使用visual c + +,我想打破代碼(如等待一個鍵被按下(我已經這樣做了)),但檢測哪個鍵被按下。
如C#的.ReadKey()c#中的.ReadKey()的C++版本是什麼?
回答
如果該鍵不是一個特殊的鍵有點(不按Ctrl,Alt鍵......),你只需要做到這一點:
char c;
std::cin >> c;
或者:
std::string s;
std::getline(std::cin,s);
這兩個將需要用戶按下「Enter」,然後再取回控制權。
如果您不希望用戶必須按Enter,請檢查本帖子的this answer:Capture characters from standard input without waiting for enter to be pressed。
但我想這樣做,他們不必按下輸入事後,就像他們點擊一個然後做一些事情,否則,如果他們點擊B然後說好做,否則告訴他們,他們沒有點擊A或B或東西 – NathanProgrammer
@ Kid8:然後做第一個(使用'char c'),這將等待用戶按下一個鍵,'c'將指示你按下了哪一個鍵。 – jpo38
這是功能的一個可怕的近似值。因爲它沒有適當的鍵盤API,所以你需要離開C++標準庫。 –
- 1. 什麼是RMI的C版本
- 2. 什麼是Objective-C的最新版本?
- 3. 在C和C++中使用的exec的不同版本是什麼?
- 4. Android中使用的默認C++版本是什麼?
- 5. C#中引用的程序集什麼是.NET版本?
- 6. Pascal的readkey是否等價?在C或C++?
- 7. 什麼是iOS/Objective-C的NSScanner的Android/Java版本?
- 8. C# - 使用ReadKey for循環
- 9. 爲什麼在C++版本的C庫中有一個「c」前綴?
- 10. 什麼是C++ Builder版本的比較魯棒性?
- 11. 什麼是[編輯器(typeof(FolderNameEditor),typeof(UITypeEditor))]的C++/CLI版本?
- 12. 這個java地圖代碼的C++版本是什麼
- 13. 什麼是D的C++系統函數版本?
- 14. 什麼是最新/最穩定的ZeroMQ C#版本?
- 15. 什麼是Java Webdriver @Findby的等效C#版本?
- 16. 什麼是Swift - Obj-c使用Xcode的正確版本號?
- 17. 什麼是C++中的塊?
- 18. Objective-C中的'^'是什麼
- 19. 什麼是C中的struct?
- 20. 什麼是C#中的int?
- 21. 什麼是C中的「{0}」?
- 22. 什麼是C#中的[]?
- 23. 什麼是C中的「-1L」?
- 24. C++中的SAL_CALL是什麼?
- 25. 什麼是C++中的ScopeGuard?
- 26. 什麼是C中的do_nanosleep()
- 27. 什麼是C++中的DBL_MAX?
- 28. C中的「uns」是什麼?
- 29. C中的isatty()是什麼?
- 30. c#中的sprintf是什麼?
應該讓你朝着正確的方向前進:https://msdn.microsoft.com/en-us/library/windows/desktop/ms646293(v=vs.85).aspx – user4581301
在重讀時,這可能會更好爲您:https://msdn.microsoft.com/en-us/library/windows/desktop/ms646299(v=vs.85).aspx – user4581301
控制檯應用程序?你有什麼樣的主循環或事件循環?您應該顯示一些最小的示例代碼,或許在您想要執行'ReadKey()'的地方使用'cin'。 – hyde