在 qt 中如何構造一段格式化字串?當然,c 中的方法都是可行的,比如 stdio.h 裡面的 snprintf 什麼的。在 qt 中qstring 提供了更好用的函式。
這個函式的具體宣告不寫了,它有20個過載,典型的示例**如下:#include
2:#include
3:#include
4:using
namespace std;
5:6:int main()
7:輸出結果:
press <return
> to close this window...
上面**中的字串 「ggicci is %1 years old, and majors in %2.」 中的 %1 和 %2 為佔位符,後面跟隨的兩個 arg() 函式中的引數分別對應兩個佔位符作為值插入。這種形式在 c# 中也有類似的體現(c#中輸出一段文字):
輸入結果:ggicci is 20 years old, and majors in software eng.press <return
> to close this window...
首先在標頭檔案中包含#include
在需要使用的地方插入:
qdebug("intensity:%d",intensity[0][2]); (%d表示整數)
輸出結果:
intensity:195
qdebug使用形式:
1、qdebug()<<
如:int ndebug;
qstring strdebug;
qdebug()<< "this is for debug, ndebug="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類的簡單用法
根據指定的字元分割字串,split 方法 qstring str hello,world qstringlist list str.split qstring a list 0 a hello qstring b list 1 b world qstring str2 b.a str2 worldh...
與QString 有關的轉換 總結
與qstring 有關的轉換 總結 一 qsting 轉 c 基本型別 1 qsting int toint 2 qstring double todouble 3 qstring float tofloat 4 qstring long tolong 5 qstring long long tol...
QString 型別轉換
因為經常用到型別轉換,看到一篇很全的文章,就記下來,方便以後使用。1.qstring 轉 intqstring str int m m str.toint 2.int 轉 qstring qstring str int m str qstring number m 3.unsigned char 轉...