gpt4 book ai didi

c - Visual Studio 2015 "stealing"应用程序的控制台

转载 作者:太空狗 更新时间:2023-10-29 16:39:07 28 4
gpt4 key购买 nike

我正在使用 Visual Studio 2015 作为 IDE 开发 gcc 应用程序。调试器是 gdb。

应用程序创建它自己的窗口。当我使用 DEBUG 开关进行编译时,我还需要应用程序生成一个控制台窗口。它用于从多个线程调试和输出 printf。多亏了“-mwindows”开关,当我从 Visual Studio 外部执行应用程序时,它才能正常工作。

不幸的是,当我从 Visual Studio 中运行该应用程序时,它似乎窃取了控制台窗口。没有生成控制台,printf 的输出被重定向到 Output Debug 窗口。

如果 VS 控制台实际上正确地打印了“\n”而不是将它们从输出中剥离,这就不是什么大问题。一切都打印在同一行上,输出变得不可读。尽我所能,我无法让 VS 在 Output Debug 窗口中插入换行符。我在网上搜索了很多,这个问题似乎有据可查,但我找不到满意的答案。

在这一点上,这些解决方案中的任何一个都适合我:

  1. 防止 Visual Studio 窃取应用程序的控制台窗口;
  2. 为我的所有 printf 添加特殊字符,以便输出调试打印换行符和回车符。

编辑:理想情况下,解决方案应该是跨平台的,从某种意义上说,它不应添加对 WinAPI 的依赖。

编辑2:"\t"似乎按预期工作。为什么“\n”不起作用?我也试过“\r\n”无济于事。

最佳答案

Microsoft 的 Visual Studio 高级 PM 经理就此问题联系了我。大约四个月前,我将其作为“反馈”发布在 Visual Studio 中(大约在我将其发布在这里的时间)。

他承认了这个问题,并表示他们将尝试通过 Update 3 添加对外部控制台的支持。

关于c - Visual Studio 2015 "stealing"应用程序的控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34909324/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com