运行 通过命令行运行 C++ 应用程序时 Cygwin 和命令提示符之间的区别

Difference between Cygwin and Command prompt when running an c++ application through command line

我有一个 C++ 应用程序,我正尝试 运行 使用 Windows 命令提示符进入应用程序目录,然后使用一些参数调用 appl.exe。应用程序启动(尚未关闭),但控件 returns 到命令提示符。 现在,当我在 Cygwin 终端上执行相同操作时,它会等待应用程序退出,然后再放弃控制。

我曾尝试寻找答案,但未能成功。

你能帮我理解行为上的差异吗?

提前致谢。

Windows 中的终端,如 CMD 和 PowerShell 以非阻塞模式启动应用程序(通常称为无头模式,如果我没记错的话。它适用于所有可执行文件)。在您的申请 运行 没问题之前,没有什么可打扰的。

Cygwin 相反,提供了类似 Linux 的功能,因此遵循启动应用程序的阻塞特性。这导致 Cygwin 终端等待 运行 应用程序退出以继续工作。