char* 与 LPCTSTR转换
1.char* 转换成 LPCTSTR
char ch[1024] = "wo shi ni baba"; int num = MultiByteToWideChar(0,0,ch,-1,NULL,0); wchar_t *wide = new wchar_t[num]; MultiByteToWideChar(0,0,ch,-1,wide,num);
解析:
num 获得长字节所需的空间
MultiByteToWideChar()表示将s中的字符传递到ps指向的内存中。-1表示传输至s中的'\0'处,num表示传递的字节个数。
2.LPCTSTR 转换成 char *
wchar_t widestr[1024] = L"wo shi ni yeye"; int num = WideCharToMultiByte(CP_OEMCP,NULL,widestr,-1,NULL,0,NULL,FALSE); char *pchar = new char[num]; WideCharToMultiByte (CP_OEMCP,NULL,widestr,-1,pchar,num,NULL,FALSE);
最是那一低头的温柔,恰似水莲花不胜凉风的娇羞,
道一声珍重,道一声珍重,那一声珍重里有无数甜蜜的忧愁

浙公网安备 33010602011771号