vs2015+win10测试支持中文,wcstombs()不支持中文
使用WideCharToMultiByte();
char * CstringToChar(CString str)
{
int n = str.GetLength(); //获取str的字符数
int len = WideCharToMultiByte(CP_ACP, 0, str, n, NULL, 0, NULL, NULL); //获取宽字节字符的大小,大小是按字节计算的
char *pChar = new char[len + 1]; //以字节为单位
WideCharToMultiByte(CP_ACP, 0, str, n, pChar, len, NULL, NULL); //宽字节编码转换成多字节编码
pChar[len] = '\0'; //多字节字符以'\0'结束 原文代码有错误哦
return pChar;
}
参考: