ubuntu qt5.0调试时printf无法输入

挨踢-linux 2016-11-19 09:14:04
测试环境:
ubuntu14.04LTS
我已经选择了
/usr/bin/xterm -e
没有勾选Run in terminal,因为勾选了一调试qt界面就变黑了,可能qt卡了吧
所以printf输出在Application Output的
我在运行时是能够使用printf输出的
但是,
在调试的时候(F5),单步调试Step Over运行printf语句,怎么也不能输出到控制台,
...全文
376 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
qt-长沙-小昊 2017-01-13
  • 打赏
  • 举报
回复
大家好我是howard才弄Qt。
打印控制台很简单用C++函数,QT支持。使用方法:
头文件少不了:#include <iostream>
cout << QLocale::system().name().toStdString() << endl; //利用C++打印出来什么语音,返回值QString
toStdString()主要是这个函数。进行了标准转换。


Little柯南 2016-11-21
  • 打赏
  • 举报
回复
类似Qt调试,要输出到控制台,内部支持是按照qDebug()这个函数来的。 举个例子吧,你使用c语言时候,在window上控制台输出,用的是printf(),使用Qt时候使用qDebug()输出流也是显示在控制台上。ubuntu同理,你添加#include <QDebug>的头文件,然后将printf换成qDebug(),其他不改,这样也可以控制台输出调试
liyuanbhu 2016-11-21
  • 打赏
  • 举报
回复
不加 fflush() 而是在printf 输出的字符串中多加个 \n 应该也行。就是强制把结果推送到 console.
挨踢-linux 2016-11-21
  • 打赏
  • 举报
回复
引用 1 楼 liyuanbhu 的回复:
fflush() 一下试试。。
多谢大神, 我加了 fflush(stdout); 没想到真的输出到qt控制台了。 注,我下面所说的都是针对在调试时调用的printf 想问一下为什么会有效?windows的qt我没有试过是否printf能够直接输出到控制台,但是其他的IDE比如说VC、VS,等其他C编程软件就算是在调试时也是肯定能够printf输出到控制台的。
挨踢-linux 2016-11-21
  • 打赏
  • 举报
回复
引用 2 楼 u010111033 的回复:
类似Qt调试,要输出到控制台,内部支持是按照qDebug()这个函数来的。 举个例子吧,你使用c语言时候,在window上控制台输出,用的是printf(),使用Qt时候使用qDebug()输出流也是显示在控制台上。ubuntu同理,你添加#include <QDebug>的头文件,然后将printf换成qDebug(),其他不改,这样也可以控制台输出调试
直接运行是printf输出到qt控制台没有任何问题的,只是调试的时候,不能输出到qt控制台 注,我这里说的“qt控制台”指的是qt的Application Output输出,并不是指弹出来的黑色的那个控制台
liyuanbhu 2016-11-20
  • 打赏
  • 举报
回复
fflush() 一下试试。。

16,235

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧