码迷,mamicode.com
首页 > 编程语言 > 详细

VC++/MFC中WCHAR *转化为char *的方法,即宽字符和普通字符互相转化【已解决】

时间:2015-01-20 20:34:05      阅读:290      评论:0      收藏:0      [点我收藏+]

标签:

1.wchar *转 char *

char *wtoc(wchar_t *wText)
{
	DWORD dwNum = WideCharToMultiByte(CP_ACP, NULL, wText, -1,NULL, 0, NULL, FALSE);//把第五个参数设成NULL的到宽字符串的长度包括结尾符
	char *psText = NULL;
	psText = new char[dwNum];
	if(!psText)
	{
		delete []psText;
		psText = NULL;
	}
	WideCharToMultiByte (CP_ACP, NULL, wText, -1,psText, dwNum, NULL, FALSE);
	return psText;
}

2. char *转wchar *

wchar_t *ctow(char *sText)
{
	DWORD dwNum = MultiByteToWideChar (CP_ACP,  0, sText, -1, NULL, 0);//把第五个参数设成NULL的到宽字符串的长度包括结尾符
 
	wchar_t *pwText = NULL;
	pwText = new wchar_t[dwNum];
	if(!pwText)
	{
		delete []pwText;
		pwText = NULL;
	}
	unsigned nLen = MultiByteToWideChar (CP_ACP, 0, sText, -1, pwText, dwNum+10);
	if (nLen >= 0)
	{pwText[nLen] = 0;}
	return pwText;
}


VC++/MFC中WCHAR *转化为char *的方法,即宽字符和普通字符互相转化【已解决】

标签:

原文地址:http://blog.csdn.net/zwc2xm/article/details/42921999

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!