LPCWSTR是什么類型呢?
看看如何定義的:
typedef const wchar_t* LPCWSTR;
顧名思義就是:
LPCWSTR是一個指向unicode編碼字符串的32位指針,所指向字符串是wchar型,而不是char型。
轉換函數 直接可以使用
LPCWSTR stringToLPCWSTR(std::string orig)
{
size_t origsize = orig.length() + 1;
const size_t newsize = 100;
size_t convertedChars = 0;
wchar_t *wcstring = (wchar_t *)malloc(sizeof(wchar_t)*(orig.length()-1));
mbstowcs_s(&convertedChars, wcstring, origsize, orig.c_str(), _TRUNCATE);
return wcstring;
}
不存在從std::string轉換為const char*的適當函數
string a;
a.c_str();//即可實現從從std::string轉換為const char*