我有将char *转换为wchar_ *的函数。但它没有 - 我只有3个空格的奇怪字符串。是因为GetWC返回指向不存在的字符串的指针吗?
const wchar_t *GetWC(const char *c)
{
size_t cSize = strlen(c)+1;
std::wstring wc( cSize, L'#');
mbstowcs( &wc[0], c, cSize );
return wc.c_str();
}
int _tmain(int argc, _TCHAR* argv[])
{
char *g ="aaa";
const wchar_t* f= GetWC(g);
wcout<<f;
return 0;
}
答案 0 :(得分:1)
wc.c_str()
返回后 GetWC
无效。 wc
是一个局部变量