先說幾個相關的類:
一 、qchar
qchar 類是 qt 中用於表示乙個字元的類,實現在 qtcore 共享庫中。qchar 類內部用2個位元組的unicode編碼來表示乙個字元。 構造
qchar 類提供了多個不同原型的建構函式以方便使用,如:
實際使用時很少直接構造 qchar 類的物件,而是把這些建構函式當做型別轉換來用,讓編譯器自動構造所需的qchar類物件。也就是說,在所有需要qchar類作為引數的地方都可以安全地使用各種整數型別。 判斷
qchar 類提供了很多成員函式,可以對字元的型別進行判斷,如:
注意這幾個函式都不會改變物件自身,轉換的結果通過返回值反映出來。
比較:bool operator != (qchar c1, qchar c2);
// 判斷 c1 是否不等於 c2
bool operator
< (qchar c1, qchar c2);
// 判斷
c1 是否小於 c2
bool operator
<= (qchar c1, qchar c2);
// 判斷 c1 是否小於等於 c2
bool operator == (qchar c1, qchar c2);
// 判斷 c1
是否等於c2
bool operator > (qchar c1, qchar c2);
// 判斷 c1 是否大於 c2
bool operator >= (qchar c1, qchar c2);
// 判斷
c1 是否大於等於 c2
二、qstring類:
qstring 類是 qt 中用於表示字串的類,實現在 qtcore 共享庫中。qstring 類在實現上有以下特徵。
1)字串採用 unicode 內部編碼,可以表示世界上大多數語言的文字。
2)字串的儲存有引用計數,當乙個 qstring 物件被複製為另乙個 qstring 物件時,它們實際上指向相同的儲存空間,僅僅是增加乙個引用計數。
3)採用 「按需複製」 的技術,當指向相同儲存空間的多個 qstring 物件中的乙個要被修改時,將真正複製乙個新的字串並進行修改。
構造:qstring 類提供了很多不同原型的建構函式以方便使用。如:
由於存在這些建構函式,凡是可以用 qstring 類作為引數的地方,都可以安全地使用 qchar 物件或普通的字串。
判斷 :
可以用下面的成員函式判斷 qstring 物件是否為空字串:
bool
isempty()
const;
// 判斷是否為空字串
轉換:
這些函式能夠解析 qstring 物件的內容,將其轉換為相應的數值。其中 ok 引數指向乙個 bool 型變數, 這個引數用於輸出轉換是否成功的資訊。base引數則是轉換為整數型別時的基。這些函式都不會改變 qstring 物件自身。
注意: 當字串以 0x開頭時,轉換的基自動轉換為16, 當字串以0開頭時,轉換的基自動為8。
還有一些將其他型別轉換成qstring的方法:
使用static的函式number()可以把數字轉換成字串。例如:
qstring str = qstring::number(54.3);
你也可以使用非static函式setnum()來實現相同的目的:
qstring str;
str.setnum(54.3);
字串的拼接:
一、qstring可以自動的對占用記憶體空間進行擴充,這種連線操作是恨迅速的。下面是這兩個操作符的使用:
qstring str = "user: " ;
str = "user: " ;
str.sprintf("%s %.1f%%" , "perfect competition" , 100.0);
這句**將輸出:perfect competition 100.0%,同c語言的printf()一樣。不過前面我們也見到了qt提供的另一種
四、格式化字串輸出的函式arg():
str = qstring("%1 %2 (%3s-%4s)" )
.arg("permissive" ).arg("society" ).arg(1950).arg(1970);
這段**中,%1, %2, %3, %4作為佔位符,將被後面的arg()函式中的內容依次替換,比如%1將被替換成permissive,%2將被替換成society,%3將被替換成 1950,%4將被替換曾1970,最後,這句**輸出為:permissive society (1950s-1970s). arg()函式比起sprintf()來是型別安全的,同時它也接受多種的資料型別作為引數,因此建議使用arg()函式而不是傳統的 sprintf()。
拼接字串 Python中字串拼接的N 1種方法
python拼接字串一般有以下幾種方法 1.直接通過 操作符拼接 輸出結果 hello world 使用這種方式進行字串連線的操作效率低下,因為python中使用 拼接兩個字串時會生成乙個新的字串,生成新的字串就需要重新申請記憶體,當拼接字串較多時自然會影響效率。2.通過str.join 方法拼接 ...
Python 分割字串與拼接字串
號 實現字串連線 zhrq 95 zhrq95 a 95 b zhrq print b a 注 是反引號,因為其容易看錯,此方法不推薦 zhrq95 print b str a zhrq95 print b repr a repr a 與上面的類似 zhrq95 split 這個函式的作用是將字串根...
golang中的字串拼接
由於golang中的字串是不可變的型別,因此用 連線會產生乙個新的字串對效率有影響。這種方式實現的字串拼接過程最簡單,在實際中這種拼接方式在應對少量拼接時,效率還是不錯的。s1 hello s2 world s3 s1 s2 fmt.print s3 s3 helloworld 使用sprintf函...