直接上代码:
std::wstring CATOW(const char* lpcszString)//返回值类型是wstring类型
{
int unicodeLen = ::MultiByteToWideChar(CP_ACP, 0, lpcszString, -1, NULL, 0);//获取字符串长度
wchar_t* pUnicode = new wchar_t[unicodeLen + 1];//开辟宽字节内存
memset(pUnicode, 0, (unicodeLen + 1) * sizeof(wchar_t));//清空
::MultiByteToWideChar(CP_ACP, 0, lpcszString, -1, (LPWSTR)pUnicode, unicodeLen);//转换
std::wstring wString = (wchar_t*)pUnicode;//强转后赋值给返回变量
delete[] pUnicode;
return wString;
}
本文介绍了一个C++函数,该函数用于将ANSI字符串转换为宽字符字符串(wstring)。通过使用MultiByteToWideChar函数实现从ANSI到Unicode的转换,并详细展示了如何分配内存、进行转换及释放资源。
4020

被折叠的 条评论
为什么被折叠?



