Kdevelop 使用 Python / C++:调试模式没有输出

3 投票
1 回答
1532 浏览
提问于 2025-04-18 15:02

我刚开始使用Kdevelop,遇到了一个在调试模式下运行的问题:

我写了最简单的代码,只是打印一些内容:

print "Hello World! \n"
print "How are you doing World ?\n"
print "Bye World! \n"

在使用“执行”时,一切都正常,我得到了预期的输出。不过,在“执行”模式下,我不能设置断点(或者说任何调试功能)。

而在调试模式下,我可以设置断点和其他有用的功能,但在输出视图工具栏中没有任何输出。

在使用Kdevelop进行C++编程时,也有类似的情况:

在调试模式下,什么都不打印,直到你打印一个"\n"(这似乎会触发某种刷新)。

参考链接: https://bbs.archlinux.org/viewtopic.php?id=100980

我不禁想,这两种行为可能有某种关联,所以如果能解释为什么在C++中"\n"会导致Kdevelop刷新(并希望能在Python中复制这个效果),可能会让我找到解决的方向。

我尝试过的事情:

  • sys.stdout.flush(); - 没有效果
  • 在行为脚本应用配置中使用-u参数 - 没有效果
  • 在脚本应用配置中将python -u作为解释器命令 - “抱歉,调试仅支持Python 2.x应用程序”...所以这个参数不应该在这里 :)

那么,有人知道在KDevelop中运行Python脚本时,如何在调试输出中打印信息吗?

1 个回答

0

在启动配置中启用 external terminal,然后重新构建项目。最后,启动调试器,这样输出终端就会在一个新窗口中打开。

撰写回答