在 Windows 上,我通常会创建一个 Windows 桌面应用程序,这是因为控制台应用程序会在屏幕上显示一个简短的黑框。
我在 Linux Mint 上使用 CodeBlocks,我怎么能在 Linux 上做与上述相同的操作?
我不想在显示终端窗口后隐藏它。
最佳答案
Linux 没有与 windows 相同的“subsystem”概念:控制台和桌面应用程序之间没有区别或分离。当你在 Linux 上启动一个应用程序时,它不会打开一个控制台窗口,除非程序员明确地编程让它打开一个。
如果应用程序向 stdout
写入任何内容或 stderr
, 这会发生什么取决于应用程序是如何启动的。默认情况下,应用程序继承 stdout
和 stderr
其父进程。如果应用程序是从终端启动的,则输出将在终端上可见。如果应用程序是由桌面环境从菜单项启动的,则输出可能会进入日志文件,或者可能会丢失。
如果您在从 IDE 运行程序时看到打开的终端窗口,那是 IDE 正在为您做的事情,而不是您的应用程序。如果它困扰您,我认为 IDE 有办法在设置中禁用此行为。
关于c++ - Linux 上没有控制台应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62866627/