QT中的qDebug()

Posted lh03061238

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT中的qDebug()相关的知识,希望对你有一定的参考价值。

原文链接  https://www.cnblogs.com/lomper/p/3960462.html

首先在头文件中包含 

#include<QDebug>

当开发者需要为一个装置、文件、字符串或者控制台,写出调试和跟踪信息时,该类被使用。

在需要使用的地方插入:

qDebug("intensity:%d",intensity[0][2]);  // (%d表示整数)

输出结果:

intensity:195
技术图片
//  注:
%a,%A  //读入一个浮点值(仅C99有效)    
%c     //读入一个字符    
%d     //读入十进制整数    
%i     //读入十进制,八进制,十六进制整数    
%o     //读入八进制整数    
%x,%X  //读入十六进制整数   
%s     //读入一个字符串,遇空格、制表符或换行符结束。    
%f,%F,%e,%E,%g,%G    //用来输入实数,可以用小数形式或指数形式输入。    
%p     // 读入一个指针    
%u     //读入一个无符号十进制整数   
%n     //至此已读入值的等价字符数    
%[]    //扫描字符集合    
%%     //读%符号
技术图片

qDebug():输出调试信息

Example: 

qDebug( "my window handle = %x", myWidget->id() );

一般情况下,使用qDebug()就可以获得一个缺省的QDebug对象

qDebug()<<”Date:”<<QDate::currentDate();

qDebug()<<”Types:”<<QString(“QString(“String”)”<<QChar(‘x’)<<QRect(0,10,50,40));

qDebug()<<”Custom coordinate type:”<<coordinate;

这构造一个QDebug对象,它使用接受一个来自QtDebugMsg的QtMsgType值的构造器。相同的,qWaring(),qCritical(),qFatal()也返回QDebug对象为相应的消息类型。

技术图片
//qWarning():输出警告信息 
void f( int c )
{
     if ( c > 200 )
     qWarning( "f: bad argument, c == %d", c );
}
//qFatal():输出致命错误信息 ,程序自动被迫中止
int divide( int a, int b )
{
     if ( b == 0 )                               // program error
     qFatal( "divide: cannot divide by zero" );
     return a/b;
}
技术图片

这个类也提供一些构造器为其他的情况,包括一个构造器,它接受QFile或者任何QIODevice子类,他被用来写调试信息到文件和其他设备。这个构造器也接受QString,用来写string以显示。

以上是关于QT中的qDebug()的主要内容,如果未能解决你的问题,请参考以下文章

QT5.5 中 qDebug() 的新 QFlags 助手的问题

qt qdebug正常releasd异常

Qt基础-程序调试

QT中的时间转换代码

QT屏蔽qDebug的方法

QT中的字符串