可能重复:
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