如何实现"Press Any Key To Exit"
How to implement "Press Any Key To Exit"
以下是C++中的一个简单代码:
cout << "Press Any Key To Exit...";
当用户按下键盘上的任何按钮时,关闭程序的代码是什么。在上面的代码之后我应该写什么?我知道我可以使用cin.ignore();如果用户按下Enter键,程序将关闭,但我的目标是任何键。
如何做到这一点?
您可以使用getchar
或cin.get()
来实现这一点,两者都会阻塞,直到它们可以从控制台获取字符为止(未输入控制台的监控键会进入系统特定的领域)。
试试这个:system("pause");
它将一直保持,直到按下任何键。
编辑:在决定这个替代之前,请阅读下面的评论
您可以使用ncurses库来执行此操作。这种解决方案的缺点是,您将无法再使用cout进行输出。
#include <ncurses.h>
int main()
{
initscr();
printw("Press Any Key To Exit...");
getch();
endwin();
}
编译时请确保使用-lncurses
getch()
、getche()
、system("pause")
、exit(0)
。。。应该起作用。
相关文章:
- 哪些类型可以转换为std::any
- 引用 std::any 或 not_yet_in_std::whatever 的惯用方式是什么?
- std::is_reference from std::any
- 是否可以从 std::any 创建 std::any 与 std::reference_wrapper?
- "reserved for any use"的含义是什么?
- boost::any 如何检查空值/未定义的值
- 使用 std::map 存储在 std::any 中,然后通过 std::any_cast 访问
- 可以有效地转换 std::any 与 std::any_cast
- 避免使用 std::any 编写相同的重复类型检查代码
- 广义 std::function (std::any 表示可调用对象)
- 如何在 c++17 中获取存储在 "any" 中的数据大小?
- 从 Any 包中提取和匹配 protobuf 消息类型名的首选方法
- 为电容式触摸传感器设置延迟以防止"double press"
- 如何获取"any"当前持有的类型的名称?
- 在可变参数模板函数中存储参数而不使用 boost::any
- 如何将参数包扩展为向量<any>
- 使用 Visual Basic 更改C++中的"Press any key to Continue..."
- 控制台应用程序不打印"Press any key to continue . . ."
- 如何实现"Press Any Key To Exit"
- Visual Studio 2010 "Press any key to continue . . ."不显示