int _tmain(int argc, _TCHAR* argv[])
{
int mMinSize;
string mstrReturn;
char *mcharReturn;
const WCHAR *mchar;
///*******************************OK*************************************
wstring mstr01 = _T("钓鱼岛是中国的");
mchar = mstr01.c_str();
mMinSize = WideCharToMultiByte(CP_ACP, NULL, mchar, -1, NULL, 0, NULL, FALSE);
mcharReturn = new char[mMinSize];
WideCharToMultiByte(CP_ACP, NULL, mchar, -1, mcharReturn, mMinSize, NULL, FALSE);
//mcharReturn = "钓鱼岛是中国的"
///*******************************OK*************************************
wstring mstr02 = _T("釣魚台は中国の");
mchar = mstr02.c_str();
mMinSize = WideCharToMultiByte(CP_ACP, NULL, mchar, -1, NULL, 0, NULL, FALSE);
mcharReturn = new char[mMinSize];
WideCharToMultiByte(CP_ACP, NULL, mchar, -1, mcharReturn, mMinSize, NULL, FALSE);
//mcharReturn = "釣魚台は中国の"
///*******************************NG*************************************
wstring mstr03 = _T("한국어");
mchar = mstr03.c_str();
mMinSize = WideCharToMultiByte(CP_ACP, NULL, mchar, -1, NULL, 0, NULL, FALSE);
mcharReturn = new char[mMinSize];
WideCharToMultiByte(CP_ACP, NULL, mchar, -1, mcharReturn, mMinSize, NULL, FALSE);
//mcharReturn = "???"
///*******************************NG*************************************
wstring mstr04 = _T("دياو هو الصين");
mchar = mstr04.c_str();
mMinSize = WideCharToMultiByte(CP_ACP, NULL, mchar, -1, NULL, 0, NULL, FALSE);
mcharReturn = new char[mMinSize];
WideCharToMultiByte(CP_ACP, NULL, mchar, -1, mcharReturn, mMinSize, NULL, FALSE);
//mcharReturn = "???? ?? ?????"
///*******************************OK*************************************
wstring mstr05 = _T("Diaoyutai Китая");
mchar = mstr05.c_str();
mMinSize = WideCharToMultiByte(CP_ACP, NULL, mchar, -1, NULL, 0, NULL, FALSE);
mcharReturn = new char[mMinSize];
WideCharToMultiByte(CP_ACP, NULL, mchar, -1, mcharReturn, mMinSize, NULL, FALSE);
//mcharReturn = "Diaoyutai Китая"
return 0;
}