QString用法总结

2024-04-05 00:38
文章标签 总结 用法 qstring

本文主要是介绍QString用法总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

构造QString

在 Qt 中如何构造一段格式化字符串?

当然,C 中的方法都是可行的,比如 stdio.h 里面的 snprintf 什么的。在 Qt 中QString 提供了更好用的函数。

  • arg

这个函数的具体声明不写了,它有20个重载,典型的示例代码如下:

   1: #include <QtCore/QCoreApplication>
   2: #include <iostream>
   3: #include <stdio.h>
   4: using namespace std;
   5: 
   6: int main()
   7: {
   8:     QString str = QString("Ggicci is %1 years old, and majors in %2.").arg(20).arg("Software Eng");
   9:     cout << str.toStdString() << endl;
  10:     return 0;
  11: }
输出结果:
Ggicci is 20 years old, and majors in Software Eng.
Press <RETURN> to close this window...

上面代码中的字符串 “Ggicci is %1 years old, and majors in %2.” 中的 %1 和 %2 为占位符,后面跟随的两个 arg() 函数中的参数分别对应两个占位符作为值插入。这种形式在 C# 中也有类似的体现(C#中输出一段文字):

Console.WriteLine("Ggicci is {0} years old, and majors in {1}.", 20, "Software Eng");

  • sprintf

  • QString & QString::sprintf ( const char * cformat, ... )

    这个函数和 C 中的也是差不多的用法,只不过它作为QString的一个成员函数,使用起来就相当方便了,如:

       1: #include <QtCore/QCoreApplication>
       2: #include <iostream>
       3: #include <stdio.h>
       4: using namespace std;
       5: int main()
       6: {
       7:     QString str2;
       8:     str2.sprintf("Ggicci is %d years old, and majors in %s.", 20, "Software Eng");
       9:     cout << str2.toStdString() << endl;
      10:     return 0;
      11: }

输入结果:

Ggicci is 20 years old, and majors in Software Eng.
Press <RETURN> to close this window...


qDebug()用法

首先在头文件中包含#include <QDebug>

在需要使用的地方插入:

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

输出结果:

intensity:195

qDebug使用形式:

1、qDebug()<< 

如:

int nDebug;

QString strDebug;

qDebug()<< "This is for debug, nDebug="<<nDebug<<", strDebug="<<strDebug;

2、qDebug(字符串格式,格式替换实际值)

qDebug("This is for Debug, nDebug=%n, strDebug=%s", nDebug, QByteArray(strDebug.toLatin1).data());

用.sprintf()以及.arg()函数组成字符串输出亦可。 

字符串格式说明:
%a,%A 读入一个浮点值(仅C99有效)    
%c 读入一个字符    
%d 读入十进制整数    
%i 读入十进制,八进制,十六进制整数    
%o 读入八进制整数    
%x,%X 读入十六进制整数   
%s 读入一个字符串,遇空格、制表符或换行符结束。
注意: 为了防止字符串中间有空格而停止,可以使用(“%s”,QByteArray(str.toLatin1()).data())格式,将字符串转换为字符数组形式。    
%f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。    
%p 读入一个指针    
%u 读入一个无符号十进制整数   
%n 至此已读入值的等价字符数    
%[] 扫描字符集合    

%% 读%符号


这篇关于QString用法总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/877231

相关文章

Python中logging模块用法示例总结

《Python中logging模块用法示例总结》在Python中logging模块是一个强大的日志记录工具,它允许用户将程序运行期间产生的日志信息输出到控制台或者写入到文件中,:本文主要介绍Pyt... 目录前言一. 基本使用1. 五种日志等级2.  设置报告等级3. 自定义格式4. C语言风格的格式化方法

SpringBoot 获取请求参数的常用注解及用法

《SpringBoot获取请求参数的常用注解及用法》SpringBoot通过@RequestParam、@PathVariable等注解支持从HTTP请求中获取参数,涵盖查询、路径、请求体、头、C... 目录SpringBoot 提供了多种注解来方便地从 HTTP 请求中获取参数以下是主要的注解及其用法:1

Spring 依赖注入与循环依赖总结

《Spring依赖注入与循环依赖总结》这篇文章给大家介绍Spring依赖注入与循环依赖总结篇,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. Spring 三级缓存解决循环依赖1. 创建UserService原始对象2. 将原始对象包装成工

Java中HashMap的用法详细介绍

《Java中HashMap的用法详细介绍》JavaHashMap是一种高效的数据结构,用于存储键值对,它是基于哈希表实现的,提供快速的插入、删除和查找操作,:本文主要介绍Java中HashMap... 目录一.HashMap1.基本概念2.底层数据结构:3.HashCode和equals方法为什么重写Has

Android协程高级用法大全

《Android协程高级用法大全》这篇文章给大家介绍Android协程高级用法大全,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友跟随小编一起学习吧... 目录1️⃣ 协程作用域(CoroutineScope)与生命周期绑定Activity/Fragment 中手

Python异步编程之await与asyncio基本用法详解

《Python异步编程之await与asyncio基本用法详解》在Python中,await和asyncio是异步编程的核心工具,用于高效处理I/O密集型任务(如网络请求、文件读写、数据库操作等),接... 目录一、核心概念二、使用场景三、基本用法1. 定义协程2. 运行协程3. 并发执行多个任务四、关键

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

Python中yield的用法和实际应用示例

《Python中yield的用法和实际应用示例》在Python中,yield关键字主要用于生成器函数(generatorfunctions)中,其目的是使函数能够像迭代器一样工作,即可以被遍历,但不会... 目录python中yield的用法详解一、引言二、yield的基本用法1、yield与生成器2、yi

深度解析Python yfinance的核心功能和高级用法

《深度解析Pythonyfinance的核心功能和高级用法》yfinance是一个功能强大且易于使用的Python库,用于从YahooFinance获取金融数据,本教程将深入探讨yfinance的核... 目录yfinance 深度解析教程 (python)1. 简介与安装1.1 什么是 yfinance?

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创