单击窗口时如何防止c ++程序停止?
Posted
技术标签:
【中文标题】单击窗口时如何防止c ++程序停止?【英文标题】:How to prevent a c++ program to stop when click on the window? 【发布时间】:2018-01-31 17:28:17 【问题描述】:我正在使用 CodeBlocks 来编译我的 c++ 程序。
当我运行 .exe 文件并单击窗口时,程序正在停止(这正常吗?)。
当我点击它时如何防止程序停止?或者点击后如何让程序继续运行?
编辑:例如用这个最少的代码
#include <iostream>
int main()
while (true)
std::cout << "*";
当我运行程序时,它应该无限运行,但是每当我在程序打开的窗口内左键单击时,它就会杀死程序。 这是故意的,还是某种错误?
【问题讨论】:
不清楚你在问什么。可能太宽泛了。请带上the tour 并阅读the help page。欢迎来到 SO。 尝试在某个终端运行你的程序.....通过一些命令...... 我的水晶球说你需要在控制台的标题栏上点右键,打开设置,然后禁用鼠标选择。 它可能是特定于操作系统的,您的问题没有提到任何操作系统。顺便说一句,程序可以在没有任何鼠标的情况下启动(例如在某些命令行上),并且某些计算机(例如 Web 服务器)没有鼠标。 我的操作系统是 Windows 10。当我通过双击 .exe 文件运行程序或通过命令终端运行程序时会出现此问题。 【参考方案1】:它不会“杀死”你的程序;它只会暂停它。您可以按 Enter,您的程序将恢复。
这是 Windows 的一项功能。当它在控制台(也称为“黑色窗口”)中运行程序时,它允许您通过用鼠标左键拖动选择一个矩形区域来获取程序的输出。
这就是让你烦恼的地方。 Windows 认为您想在输出窗口中选择一个区域,但您不想这样做 - 您只想单击该窗口(例如,将其置于其他窗口上方)。要解决此问题,请通过右键单击窗口标题并选择“属性”、“选项”、“编辑选项”、“快速编辑模式”来禁用“快速编辑”模式。
Windows 似乎会记住此设置,因此您只需执行“一次”(直到您决定确实需要此功能)。
【讨论】:
以上是关于单击窗口时如何防止c ++程序停止?的主要内容,如果未能解决你的问题,请参考以下文章
用C语言写的API运行的时候总是先弹出一个命令行窗口,如何让他不弹出来?