多字节转宽字符
#include <iostream>
#include<Windows.h>
int main()
{
setlocale(LC_ALL, ".utf8");
char cBuf[30] = "ni hao 我的朋友";
TCHAR tBuf[30];
wmemset(tBuf, 0, _countof(tBuf));
MultiByteToWideChar(CP_ACP, NULL, cBuf, strlen(cBuf), tBuf, _countof(tBuf));
wprintf_s(L"%s", tBuf);
}
int main()
{
setlocale(LC_ALL, ".utf8");
char cBuf[30] = "ni hao 3我的朋友";
TCHAR *tBuf=NULL;
DWORD d=MultiByteToWideChar(CP_ACP, NULL, cBuf, strlen(cBuf), NULL, 0);
tBuf =(TCHAR*) malloc(d * sizeof(TCHAR));
wmemset(tBuf, 0, d);
MultiByteToWideChar(CP_ACP, NULL, cBuf, strlen(cBuf), tBuf, d);
tBuf[d] ='\0';
wprintf(L"%s", tBuf);
}