BOOL WCharToMByte(LPCWSTR lpcwszStr, string &str)
{
DWORD dwMinSize = 0;
LPSTR lpszStr = NULL;
dwMinSize = WideCharToMultiByte(CP_OEMCP,NULL,lpcwszStr,-1,NULL,0,NULL,FALSE);
if(0 == dwMinSize)
{
return FALSE;
}
lpszStr = new char [dwMinSize];
WideCharToMultiByte(CP_OEMCP,NULL,lpcwszStr,-1,lpszStr,dwMinSize,NULL,FALSE);
str = lpszStr;
delete [] lpszStr;
return TRUE;
}
本文介绍了一个用于将宽字符(WCHAR)转换为多字节(如ASCII)字符串的C++函数BOOLWCharToMByte。该函数首先计算转换所需的最小字节数,然后分配相应的内存,并使用WideCharToMultiByte函数完成转换过程。
1460

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



