一、qDebug
qDebug用于在控制台输出调试信息,主要有以下几种用法。
1、类似c++的cout函数
QString str=“world”;
qDebug()<<“hello “<<str<<”!”<<endl;
- 注:此处endl起到的作用有两个:
- a、等同于\n换行
- b、刷新缓冲区,将缓冲区数据写入文件或屏幕,因此会影响程序效率。
- endl等价于"/n"+flush();
2、构造函数直接引入参数
-字符串拼接
- 例2.1:QString str=“world!”;
- qDebug("hello "+str);
-类似mfc中CString的format函数
- int year=18;
- qDebug(“今年我%d”,year);
注:
%a,%A 读入一个浮点值(仅C99有效)
%c 读入一个字符
%d 读入十进制整数
%i 读入十进制,八进制,十六进制整数
%o 读入八进制整数
%x,%X 读入十六进制整数
%s 读入一个字符串,遇空格、制表符或换行符结束。
%f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。
%p 读入一个指针
%u 读入一个无符号十进制整数
%n 至此已读入值的等价字符数
%[] 扫描字符集合
%% 读%符号
二、在Qt的GUI程序中显示控制台
在Qt的界面程序中显示控制台分为两种显示方法:
1. 程序在启动时显示控制台。
2.程序启动时只显示界面,通过后期触发显示控制台。
1. 程序在启动时显示控制台。
2.程序启动时不显示控制台,之后通过触发显示。
程序在启动时不显示控制台,在Qt中无需勾选“run in terminal ”,或是在VS配置中选择“窗口”,只需在触发槽中添加打开控制台的代码。
#include <winodws>
void test::openTerminal()
{
AllocConsole();//打开控制台
freopen("CON","w",stdout);//将输出定向到控制台
}
文章转自博客园(ImreW):qDebug - ImreW - 博客园
本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QSS,OpenCV,Quick模块,面试题等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓↓