C C 中常用的資料型別轉換

2021-07-10 03:34:25 字數 1861 閱讀 5302

1. int, float 轉cstring

cstring m_strtempmax="最大灰度值:";

cstring cstemp=_t("");

//int convert to cstring

int ntemp=10;

cstemp.format(_t("%d"),ntemp);

//float convert to cstring

float ftemp=10.5;

cstemp.format(_t("%f"),ftemp);

2. cstring 轉 char*

cstring strtest;

char * charpoint;

charpoint=strtest.getbuffer(strtest.getlength());

3. cstring 轉 int

cstring temp1="1223";

int ntemp1=0;

ntemp1=atoi(temp1);

4. lpctstr   ansi情況下,lpctstr 就是 const char*, 是常量字串(不能修改的)

lptstr 就是 char*, 即普通字串(非常量,可修改的)

5. int 轉char

char ctemp[25];

itoa(20,ctemp,10);

char*itoa(int value,char*string,int radix);

int value 被轉換的整數,char *string 轉換後儲存的字元陣列,int radix 轉換進製數,如2,8,10,16 進製等  寫過的程式

char temp;

char a[1000];

for (int i=0;i<1000;i++)

7.cstring與string

cstring可以轉換為基本型別lpctstr,lpctstr根據專案編碼可以是const char*或者const wchar_t*;string可以用c_str()轉換為const char*,stringw可以用c_str()轉換為const w_char*。而cstring和string/w都過載了=賦值操作符,可以把char*或者wchar_t*字串賦值給cstring或者string/w型別的變數,或者呼叫其建構函式。

string to cstring比較簡單

string str="abcde";

cstring cstr(str.c_str());

cstring to string,要看你的cstring用的是unicode還是非unicode,

非unicode就簡單了

cstring cs="abcde";

string str(cs.getbuffer(cs.getlength()));

unicode就麻煩點

需要轉換一下才行,給個函式你用

cstring cs=_t("abcde");

string str=cgeneralutility::wchar2ansi(cs.getbuffer(cs.getlength()));

string cutility::wchar2ansi(lpcwstr pwszsrc)

8. string -> cstring   

cstring.format("%s", string.c_str());   

9. char -> string   

string s(char *);   

10. cstring -> string   

string s(cstring.getbuffer());   

getbuffer()後一定要releasebuffer(),否則就沒有釋放緩衝區所佔的空間.

VC中常用資料型別轉換

剛接觸vc程式設計的朋友往往對許多資料型別的轉換感到迷惑不解,本文將介紹一些常用資料型別的使用。我們先定義一些常見型別變數藉以說明 int i 100 long l 2001 float f 300.2 double d 12345.119 char username 程佩君 char temp 2...

MFC中常用資料型別轉換

剛接觸vc程式設計的朋友往往對許多資料型別的轉換感到迷惑不解,本文將介紹一些常用資料型別的使用。我們先定義一些常見型別變數藉以說明 int i 100 long l 2001 float f 300.2 double d 12345.119 char username 程佩君 char temp 2...

VC中常用資料型別轉換

剛接觸vc程式設計的朋友往往對許多資料型別的轉換感到迷惑不解,本文將介紹一些常用資料型別的使用。我們先定義一些常見型別變數藉以說明 int i 100 long l 2001 float f 300.2 double d 12345.119 char username 女俠程佩君 char temp...