【发布时间】:2023-03-03 01:33:02
【问题描述】:
我正在使用getch(),我的应用程序立即崩溃。包括在做的时候:
int main()
{
getch();
}
我找不到链接,但据推测问题是它需要关闭缓冲或类似这些奇怪的东西,我仍然希望 cout 与跨平台代码一起工作。
有人告诉我使用std::cin.get(),但我希望应用程序在按下某个键时退出,而不是在用户输入字母或数字然后按回车键退出时退出。
这有什么功能吗?代码必须在 Mac(我的操作系统)和 Windows 下工作。
链接/编译不是issue;我在 XCode 中包含 <curses.h> 并与 -lcurses 链接,而 Windows 使用 <conio.h>。
【问题讨论】:
-
请注意,'cout' 是一个 C++ 结构。尽管到目前为止的答案主要是针对 C 的,但它们也适用于 C++。并且 std::cin.get() 将被卡在等待一行终端输入 - 'Hit Enter' 综合症 - 就像 getchar() 或任何其他标准 I/O 函数一样。
-
我遇到了类似的问题,这个Link 可能会有所帮助。