(1)Qt的基本数据类型以及基本输出

本文介绍了Qt框架中自定义的基础数据类型,如qint8、quint64等,并讲解了如何在Qt中进行日志输出,包括使用QDebug、qInfo、qWarning、qCritical和qFatal等函数,以及如何取消输出时的空格和字符串引号,还提供了抑制输出的两种方式。
摘要由CSDN通过智能技术生成

基础类型

        因为Qt是一个C++框架, 因此C++中所有的语法和数据类型在Qt中都是被支持的, 但是Qt中也定义了一些属于自己的数据类型, 下边给大家介绍一下这些基础的数据类型。

类型名称注释备注
qint8signed char有符号8位数据
qint16signed short16位数据类型
qint32signed short32位有符号数据类型
qint64long long int 或(__int64)64位有符号数据类型,Windows中定义为__int64
qintptrqint32 或 qint64指针类型 根据系统类型不同而不同,32位系统为qint32、64位系统为qint64
qlonglonglong long int 或(__int64)Windows中定义为__int64
qptrdiffqint32 或 qint64根据系统类型不同而不同,32位系统为qint32、64位系统为qint64
qrealdouble 或 float除非配置了-qreal float选项,否则默认为double
quint8unsigned char无符号8位数据类型
quint16unsigned short无符号16位数据类型
quint32unsigned int无符号32位数据类型
quint64unsigned long long int 或 (unsigned __int64)无符号64比特数据类型,Windows中定义为unsigned __int64
quintptrquint32 或 quint64根据系统类型不同而不同,32位系统为quint32、64位系统为quint64
qulonglongunsigned long long int 或 (unsigned __int64)Windows中定义为__int64
ucharunsigned char无符号字符类型
uintunsigned int无符号整型
ulongunsigned long无符号长整型
ushortunsigned short无符号短整型
qsizetypesize_tunsigned __int64 类型

 log输出

        在Qt中进行log输出, 一般不使用c中的printf, 也不是使用C++中的cout, Qt框架提供了专门用于日志输出的类, 头文件名为 QDebug

1. qDebug(调试信息提示)

qDebug("调试信息输出: %d",age);		// C风格
qDebug() << "输出调试信息: " << age;	// C++风格

qDebug的注意事项:

        流的形式输出会自动在数据之间加上空格

        输出之后会自动插入换行

        输出(QString)字符串会在字符串之间加上双引号

 如何取消流的形式输出时数据间的空格呢?

qDebug() << "输出调试信息: " << age;	            // 未取消数据间空格
qDebug().nospace() << "输出调试信息: " << age;	// 取消数据间的空格

 

 如何取消输出字符串(QString)时的双引号呢?

QString str = "Hello World";
qDebug() << str;
qDebug().noquote() << str;

 

 2. qInfo(输出信息)

int num = 1001;
qInfo("qInfo输出%d",num);
qInfo() << "qInfo输出" << num;

 

 3. qWarning(一般的警告提示)

qWarning("qWarning输出%d", num);
qWarning() << "qWarning输出" << num;

 

4. qCritical(严重的错误提示)

qCritical("qCritical输出%d", num);
qCritical() << "qCritical输出" << num;

  

 5. qFatal(致命错误提示,会直接中断程序)

//qFatal() 不能使用流的方式输出
qFatal("qFatal输出");
qInfo() << "如果没有中断,我就输出来了";

 抑制输出的方式

//5. 抑制QDebug输出
	qInfo() << "qInfo输出......";
	qDebug() << "qDebug输出";
	qDebug("qDebug输出2......");
	qInfo("qInfo输出2......");

方式1:使用宏的方式抑制输出

#define QT_NO_DEBUG_OUTPUT    // 放到代码文件的最开头位置

方式2:配置CMakeLists.txt文件的方式抑制输出

#在配置文件中添加宏定义抑制输出
add_compile_definitions(QT_NO_DEBUG_OUTPUT)

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

石小浪♪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>