一、其他資料型別轉化為字串
char temp[200];
1 短整型(int i)
itoa(i,temp,10); \\將i轉化為字串放入temp中,最後乙個數字表示十進位制
itoa(i,temp,2); \\將i轉化為字串放入temp中,最後乙個數字表示二進位制
2 長整形(long l)
ltoa(l,temp,10); \\將l轉化為字串放入temp中,最後乙個數字表示十進位制
二、從其它包含字串的變數中獲取指向該字串的指標
1 從cstring 到 char* (強轉);
cstring str = "2012什麼年代";
char* buf = (lpstr)(lpctstr)str;
2 (使用strcpy)
cstring thestring(「this is a test」);
lptstr lpsz = new tchar[thestring.getlength()+1];
_tcscpy(lpsz,thestring);
需要說明的是,strcpy(或可移值unicode/mbcs的_tcscpy)的第二個引數是 const wchar_t* (unicode)或const char* (ansi),系統編譯器將會自動對其進行轉換。
3 (使用cstring::getbuffer)
cstring s(_t("this is a test"));
lptstr p = s.getbuffer();
//這裡新增使用p的**
if(p!=null) *p = _t('\0');
s.releasebuffer();
//使用完後及時釋放,以便能用其它的cstring成員函式
三、字串轉換為其它資料型別
1 char temp[200];
strcpy(temp,"123");
2 字串轉成短整形
int i = atoi(temp);
3 字串轉成長整形
long l = atol(temp);
4 字串轉成浮點數
double d = atof(temp);
四、其它資料型別轉換到cstring
1 使用cstring的函式 format("%x",***);
char temp[200];可以 cstring str = temp;
五、bstr轉換成char*
1 使用convertbstrtostring;
#pragma comment(lib,"comsupp.lib")
int_tmain(int argc, _tchar* argv)
2 使用_bstr_t的賦值運算子過載。
_bstr_t b = bstrtext;
char* lpsztext2 = b;
六、char*轉換成bstr
1 使用sysallocstring等api函式。
bstr bstrtext = ::sysallocstring(l"test");
bstr bstrtext = ::sysallocstringlen(l"test",4);
bstr bstrtext = ::sysallocstringbytelen(l"test",4);
2 使用colevariant或_variant_t.
//colevariant strvar("this is a test");
_variant_t strvar("this is a test");
bstr bstrtext = strvar.bstrval;
3 使用_bstr_t,這是一種最簡單的方法。
bstr bstrtext = _bstr_t("this is a test");
4 使用ccombstr.
bstr bstrtext = ccombstr("this is a test");
或ccombstr bstr("this is a test");
bstr bstrtext = bstr.m_str;
5 使用convertstringtobstr。
char* lpsztext = "test";
bstr bstrtext = _com_util::convertstringtobstr(lpsztext);
七、cstring轉換成bstr
1 通常是通過使用 cstringt::allocsysstring 來實現。
cstring str("this is a test");
bstr bstrtext = str.allocsysstring();
……sysfreestring(bstrtext);//用完釋放
八、bstr轉換成cstring
1 bstr bstrtext = ::sysallocstring(l"test");
cstringa str;
str.empty();
str = bstrtext;
或cstring str(bstrtext);
各種資料型別的相互轉換
各種資料型別的相互轉換 char 與 const char 的轉換 char ch1 hello11 const char ch2 hello22 ch2 ch1 不報錯,但有警告 ch1 char ch2 char 轉換為 qstring 其實方法有很多中,我用的是 char a b qstrin...
C 資料型別及限制和相互轉換
c 資料型別包括有符無符整型 short,int,long,long long,int64 浮點型 float,double,long double 字元型 char,wchar t,char16 t,char32 t 相關限制資訊儲存在和中。除了傳統的初始化方式外,c 還有int a 23 或in...
java基本資料型別的相互轉換
int x 1 char c char x char c x int x int c xx valueof str 為short int long float double,str為string xx par xx str str 基本資料型別的包裝類 x tostring str x string...