C 常用型別轉換

2021-09-29 05:22:32 字數 1696 閱讀 2140

qstring  qstr = "test";

string s = qstr.tostdstring();

string s = "test";

qstring qstr = qstring::fromstdstring(s);

qstring  qstr = "test"; 

char * filename = qstr.toutf8().data();

方法2:

qstring  qstr = "test"; 

char * filename = qst.tolocal8bit().data();

char *ch="test";

qstring str(ch); // qt5

qstring str = qstring::fromutf8(ch)); // qt4

方法1:

qstring  qstr = "test"; 

char* filename = qstr .tostdstring().c_str();

stringstream ss;

float b = 10.1;

ss << b;

string p;

ss >> p;

cout << p;

注意:如果需要多個float轉成string,stringstream的變數ss貌似無法共用,例如下面的例子中只有thresh1能成功輸出。thresh2和thresh3是空的。

stringstream ss;

float thresh1 = 10.1, thresh2 = 20.1, thresh3 = 30.1;

string p1, p2, p3;

ss << thresh1;

ss >> p1; cout << p1;

ss << thresh21;

ss >> p2; cout << p2;

ss << thresh3;

ss >> p3; cout << p3;

如果需要多個float轉成string,可以用多個stringstream變數,如下:

stringstream ss1, ss2, ss3;

float thresh1 = 10.1, thresh2 = 20.1, thresh3 = 30.1;

string p1, p2, p3;

ss1 << thresh1;

ss1 >> p1; cout << p1;

ss2 << thresh21;

ss2 >> p2; cout << p2;

ss3 << thresh3;

ss3 >> p3; cout << p3;

方法2:借助float轉qstring,再qstring轉string

float thresh1 = 10.1, thresh2 = 20.1, thresh3 = 30.1;

qstring qstr = qstring("%1+%2 %3").arg(thresh1).arg(thresh2).arg(thresh3);

C 常用型別轉換

1.int to string 1.int sprintf char buffer,const char format argument 例如 int ss char temp 64 string str ss 1000 sprintf temp,d ss string s temp 呼叫strin...

C 常用型別轉換

c 大體上有兩種風格的型別轉換,顯式型別轉換和隱式型別轉換,而顯式型別轉換又分為兩種,一種c風格的強制型別轉換,另外一種使用型別轉換運算子進行型別轉換。隱式型別轉換通常出現在以下幾種情況 1.在不同型別的運算操作中 int intnum 1 double dounum 1.1 double adds...

mysql型別轉換c 型別轉換 C 型別轉換

一 簡介 型別轉換 把資料從一種型別轉換另一種型別 我們要求等號兩邊參與運算子必須型別一致,如果不一致,滿足下列條件會發生自動型別轉換或者隱式型別轉換。1.兩種型別相容 例如 int和double 相容 都是數字型別 2.目標型別大於源型別 double int 顯示型別轉換 1.兩種型別相相容 i...