首页 > 代码库 > 多字节和宽字节互相转换
多字节和宽字节互相转换
1 char* wchar2char(const wchar_t* _wsrc, char* _dest, size_t _destLen) 2 { 3 int iTextLen = WideCharToMultiByte(CP_ACP, 4 0, 5 _wsrc, 6 -1, 7 NULL, 8 0, 9 NULL, 10 NULL); 11 12 int maxLen = (size_t)iTextLen > _destLen ? _destLen : iTextLen; 13 14 ::WideCharToMultiByte(CP_ACP, 15 0, 16 _wsrc, 17 -1, 18 _dest, 19 maxLen, 20 NULL, 21 NULL); 22 23 return _dest; 24 } 25 26 wchar_t* char2wchar(const char* _src, wchar_t* _dest, size_t _destLen) 27 { 28 int unicodeLen = ::MultiByteToWideChar(CP_ACP, 29 0, 30 _src, 31 -1, 32 NULL, 33 NULL); 34 35 int maxLen = (size_t)unicodeLen > _destLen ? _destLen : unicodeLen; 36 37 ::MultiByteToWideChar(CP_ACP, 38 0, 39 _src, 40 -1, 41 (LPWSTR)_dest, 42 maxLen); 43 44 return _dest; 45 46 }
多字节和宽字节互相转换
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。