1
17
好的,找到答案了。当然,当遇到这样的问题时,答案很简单。迈克尔·亚伦走对了路。 只要在项目配置(/configuration properties/linker/system)中将子系统更改为控制台,就可以使整个过程正常工作。gui仍然可以工作,但是有一个后台控制台。我能应付的。 |
2
15
在windows上,程序通常被构建为 SUBSYSTEM:WINDOWS application or as SUBSYSTEM:CONSOLE . 使用subsystem:console构建的程序应该是文本模式的应用程序。对于这种类型的应用程序,stdout和stderr将打印到您从中启动它们的控制台,如果需要,将创建一个新控制台。 相反,子系统:windows应用程序不需要控制台。你仍然可以给stdout和stderr写信,但他们哪儿也去不了。你可以用 AllocConsole 创建要打印到的控制台,但请注意,这将始终打印到新创建的控制台窗口,而不是从中启动程序的控制台窗口。 子系统的一个技巧是:windows应用程序即使没有控制台,也可以通过管道传输stdout和stderr。因此,要使用管道stdout,可以执行以下操作:
或者如果你有
还要注意的是,除了在创建进程时windows如何对待它们之外,subsystem:windows应用程序和subsystem:console应用程序之间实际上没有任何区别。(您可以在subsystem:console应用程序中创建窗口。) You therefore can easily switch between SUBSYSTEM types (例如,使用subsystem:console进行调试构建,使用subsystem:windows进行发布)。 |
3
8
尝试 配置+=控制台 在你的.pro文件中。 |
4
4
windows区分控制台应用程序和gui应用程序,默认情况下不为gui应用程序创建控制台( see this page from MSDN )你可以使用 AllocConsole 创造一个。 |
5
0
也许不是STD::CUT线使它不显示,而是包含它的函数。也许根本就没有被调用,这就是为什么STD::CUT不起作用。 |
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
rainer · 后台插入程序的初始化 1 年前 |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |