字符串的相互转换

 

最近在开发中遇到了很多不同字符串类型的相互转换问题,让人很是头疼,经常忘了怎么转换。于是就想着总结下来,以后用起来也方便。

通常用到的字符串数据类型是string,CString和char*,下面就是这三种类型数据的相互转换对应代码:

(1)string<-->CString:

①string->CString:

string str;

//给str赋值

……

//

CString cstr( str.c_str());

或者:

string str;

CString cstr;

//给str赋值

……

//

cstr = str.c_str();

②CString -> string:直接赋值

CString cstr;

//给cstr赋值

……

//

string str;

str = cstr;

(2)string<-->char*

①string->char*:

string str;

//给str赋值

……

//

char *ch = str.c_str();

②char*->string:

char ch[100];

//给ch赋值

……

//

string str;

string = ch;直接赋值

(3)CString<--> char*

①CString->char*:

CString cstr;

//给cstr赋值

……

//

char *ch = str.GetBuffer(0);

②char*->CString:

char ch[100];

//给ch赋值

……

//

CString cstr;

cstr.format(“%s”, ch );

另外还有一些需要记住的,

(4)WCHAR类型转换为char类型:

WCHAR*->char*

       char ch[100];

       WCHAR *wch;

       USES_CONVERSION;

       wch = A2W(ch);

(5)整型、浮点型等其他类型数据与char的相互转换

sprintf

从char型数据中读取各种类型的数据

sscanf

猜你喜欢

转载自blog.csdn.net/stonylhy2011/article/details/6596076