可能重複:
How to simulate 「Press any key to continue?」如何實現 「按任意鍵退出」
這裏是C++一個簡單的代碼:
cout << "Press Any Key To Exit...";
什麼碼用於在用戶按下鍵盤上的任何按鈕時關閉程序。上面的代碼後應該寫什麼? 我知道我可以使用cin.ignore();如果用戶按Enter鍵,程序將關閉,但我的目標是任何鍵。
如何做到這一點?
可能重複:
How to simulate 「Press any key to continue?」如何實現 「按任意鍵退出」
這裏是C++一個簡單的代碼:
cout << "Press Any Key To Exit...";
什麼碼用於在用戶按下鍵盤上的任何按鈕時關閉程序。上面的代碼後應該寫什麼? 我知道我可以使用cin.ignore();如果用戶按Enter鍵,程序將關閉,但我的目標是任何鍵。
如何做到這一點?
您可以使用ncurses庫來執行此操作。這個解決方案的缺點是你將無法使用cout來輸出。
#include <ncurses.h>
int main()
{
initscr();
printw("Press Any Key To Exit...");
getch();
endwin();
}
編譯
試試這個: system("pause");
它將一直持續到任何按鍵被按下。
編輯:請決定這種替代
getch()
,getche()
,system("pause")
,exit(0)
......應該工作之前閱讀下面的意見。
請勿使用系統(「暫停」)。它很慢。它不喜歡防病毒軟件。它依賴於操作系統。這是一個巨大的巨大的安全漏洞。 – 2012-02-19 08:03:03
@Sudhir:大多數評論是真實的,但第一句話是無稽之談。一個停頓怎麼會「慢」? – 2012-02-19 09:03:01
@CodyGray Sudhir想聽起來像他知道他在做什麼,換句話說酷:-) – 2013-05-13 21:43:07
不便於攜帶,僅適用於Windows時,請務必
-lncurses
。 – Mat 2012-02-19 08:00:05我沒有downvote,但更詳細的解釋可能幫助:http://stackoverflow.com/questions/1107705/systempause-why-is-it-wrong – Necrolis 2012-02-19 08:07:18
它甚至不是「僅適用於Windows」,它的「Windows命令提示符只」。它在Powershell中不起作用。 – 2012-02-19 08:10:52