cstring 转换为
cstring 转换为 *
/* cstring 转 string */
CString cs(_T("cs"));
string s;
s = (LPCSTR)(CStringA)(cs);
/* CString转换成LPCWSTR、LPWSTR、LPCSTR、LPSTR */
//VS2005中CString已经改为宽字符型
LPWSTR lpstr = (LPWSTR)(LPCWSTR)str;
LPCSTR lpcstr = (LPCSTR)(LPCWSTR)str;
LPSTR lpcstr = (LPSTR)(LPCWSTR)str;
/* CString转换成char* 、TCHAR* */
char* p = (char*)str.GetBuffer(); //方法1
char* p = (LPSTR)(LPCTSTR)str; //方法2
TCHAR* pw = str.GetBuffer();
string 转换为
string 转换为 *
/* string 转 cstring */
//方法1
string s ="Hello World!中国";
CString cs(s.c_str());
//方法2,用c_str()确实比data()要好.
CString.format(”%s”, string.c_str());
/* string 转 lpcstr */
std::string a="abc";
LPCSTR str = a.c_str();
/* string转换为LPWSTR */
wstring widstr;
std:string s("DanTeng");
widstr = std::wstring(s.begin(), s.end());
lvItem.pszText=(LPWSTR)widstr.c_str();
/* string转换为int、float */
//可以使用atoi,atof,atol等函数来完成。
LPCWSTR 转换为
LPCWSTR 转换为 *
/* LPCWSTR转换成CString */
LPCWSTR lpcwStr = L"TestWStr";
CString str(lpcwStr);
LPWSTR 转换为
LPWSTR 转换为 *
/* LPWSTR 转换成LPWSTR */
LPWSTR lpwstr = (LPCSTR)lpstr;
lpwstr = (LPWSTR)lpcstr;
LPCSTR 转换为
LPCSTR 转换为 *
/* LPCSTR 转换成CString */
LPCSTR lpcStr = (LPCSTR)str;
/* LPWSTR 转换成LPWSTR */
LPWSTR lpwstr = (LPCSTR)lpstr;
LPSTR 转换为
LPSTR 转换为 *
/* LPSTR 转换成CString */
LPSTR lpStr = L"TestStr";
CString str(lpStr);
/* LPSTR 转换成LPCSTR、LPWSTR 、LPCWSTR */
LPCSTR lpcstr = lpstr;
LPWSTR lpwstr = (LPWSTR)lpstr;
LPCWSTR lpcwstr = (LPCWSTR)lpstr;
char*转换为
char* 转换为 *
/* char* 转换成CString */
//方法1
char* p = "test";
CString str = ("%s",p);
//方法2
CString.format(”%s”, char*);
/* char* 转换成string*/
string s(char *); //只能初始化,在不是初始化的地方最好还是用assign().
/* char* 转换成LPSTR、LPCSTR */
char *p;
LPSTR lpstr = p;
LPCSTR lpcstr = p;
/* char* 转换成WCHAR */
wchar_t ws[100];
swprintf(ws, 100, L"%hs", "ansi string");
/* char* 转换成LPCWSTR */
参考:C++中char*转换为LPCWSTR的解决方案
TCHAR * /WCHAR*转换为
TCHAR * /WCHAR* 转换为 *
/* TCHAR* 转换成char* */
p = (char*)sex;
/* WCHAR* 转换成TCHAR* */
pw = (WCHAR*)name;
/* WCHAR* 转换成char* */
char output[256];
WCHAR* wc = L"Hellow World" ;
sprintf(output, "%ws", wc );