c++wchar_t和char之间的相互转换

wchar_t* chaToWchar(const char* ch)
{
	wchar_t *wchar;
	int len = MultiByteToWideChar(CP_ACP, 0, ch, strlen(ch), NULL, 0);
	wchar = new wchar_t[len + 1];
	MultiByteToWideChar(CP_ACP, 0, ch, strlen(ch), wchar, len);
	wchar[len] = '\0';
	return wchar;
}

char* wcharToChar(const wcahr_t* wch)
{
	char * char;
	int len = WideCharToMultiByte(CP_ACP, 0, wch, wcslen(wch), NULL, 0, NULL, NULL);
	char = new char[len + 1];
	WideCharToMultiByte(CP_ACP, 0, wch, wcslen(wch), char, len, NULL, NULL);
	char[len] = '\0';
	return char;
}

版权声明:本文为Pailugou原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。