分享

Char* 与 LPCTSTR 类型的互相转换

 牛人的尾巴 2018-09-06

Char* 与 LPCTSTR 类型的互相转换

2016年06月17日 16:28:24 阅读数:682更多
个人分类: c++

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);

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多