有没有办法赶上在Visual Studio中的标准错误和标准输出?(Is there a way t

2019-06-23 19:18发布

有没有办法赶上在Visual Studio中的输出和错误? 例如,当我使用

cout <<"Hello world!"<< endl;

出现一个黑色的窗口和消失。 它是如此之快,我无法看到它。 有一个在IDE中的输出部分,但它只是让我从构建和别的东西,但没有标准输出的选择选择显示输出。

作弊的解决方案也许调用

system("pause");

但它不健全的权利。 我搜索的选项,但我无法找到一个项目。

任何人有任何想法? 谢谢。 我刚开始使用VS和我之前是在Linux上。

Answer 1:

而不是使用“开始调试”命令,如果你想检查输出,使用“开始不调试”。 这就是通常我如何处理它。 在命令提示符窗口将继续,直到你关闭它。 如果有碰撞什么的,你总是可以重新安装Visual Studio中的过程,或者只是“开始调试”来运行它。



Answer 2:

转到项目属性 - >链接器 - >系统 - >更改子系统控制台。



Answer 3:

如果没有实际上是试图重定向标准输入/犯错流,也有一些替代品,你可以试试:

  • 打开命令提示符窗口,cd到你的可执行文件将在创建然后从那里运行它的目录。
  • 也许尝试使用类似的std :: cin.get(); 或std :: cin.ignore(标准:: cin.rdbuf() - > in_avail()+ 1); 代替系统的(“暂停”)。
  • 在通过Visual Studio调试器的显示输出的OutputDebugString


文章来源: Is there a way to catch the stderr and stdout in Visual Studio?