首先,设置“项目属性”-“配置属性”-“常规”-“字符集”设置为使用“使用多字节字符集”
1、从CSting到std::string
std::string str ;
CString cstr ;
str = cstr.GetBuffer() ;
2、从std::string到CString
std::string str("test") ;
CString cstr ;
cstr.Format(TEXT("%s") , str.c_str()) ;
3、从char * 到CString
char temp[] = "test" ;
CString cstr ;
cstr.Format(TEXT("%s") , temp) ;
4、从CString到char *
方法一:
Char *temp ;
CString cstr ;
temp = cstr.GetBuffer(0) ;
cstr.ReleaseBuffer();
方法二:
CString cstr ;
LPTSTR lpsz = (LPTSTR)(LPCTSTR)cstr ;
方法三:
CString cstr("Test") ;
LPTSTR lpsz = new TCHAR[cstr.GetLength() + 1] ;
_tcscpy(lpsz , cstr) ;
5、从string到char *
方法一:
std::string str = "Test" ;
char *temp = str.data() ;
方法二:
std::string str = "Test" ;
char *temp = str.c_str() ;
方法三:
std::string str = "Test";
char temp[40] ;
str.copy(temp , 5 , 0);
*(p + 5) = '\0