MultiByteToWideChar
  int MultiByteToWideChar(_In_      UINT   CodePage,_In_      DWORD  dwFlags,_In_      LPCSTR lpMultiByteStr,_In_      int    cbMultiByte,_Out_opt_ LPWSTR lpWideCharStr,_In_      int    cchWideChar);参数描述:CodePage:常用CP_ACP、CP_UTF8dwFlags:0lpMultiByteStr [in]:指向待转换字符串。cbMultiByte [in]:lpMultiByteStr "以字节规格计算"的大小。设置 0,函数失败;设置 -1,函数处理整个字符串,包括\0字符串,导致宽字符串也会带有\0字符,返回的长度也包含\0的长度;设置 >0,根据是否包含\0,返回的结果也会相应调整。lpWideCharStr [out, optional]:指向接收宽字符串的缓冲区。cchWideChar [in]:lpWideCharStr 指向的缓冲区"以字符规格计算"的大小。设置 0,使 lpWideCharStr 无效,并使得函数返回所需"以字符规格计算"的大小。
Code:int requiredBufSize = MultiByteToWideChar(CP_ACP, 0, src, -1, NULL, 0);if (requiredBufSize > 0){WCHAR *pBuffer = new WCHAR[requiredBufSize];MultiByteToWideChar(CP_ACP, 0, src, -1, pBuffer, requiredBufSize);}
WideCharToMultiByte
  int WideCharToMultiByte(_In_      UINT    CodePage,_In_      DWORD   dwFlags,_In_      LPCWSTR lpWideCharStr,_In_      int     cchWideChar,_Out_opt_ LPSTR   lpMultiByteStr,_In_      int     cbMultiByte,_In_opt_  LPCSTR  lpDefaultChar,_Out_opt_ LPBOOL  lpUsedDefaultChar);参数描述:lpDefaultChar [in, optional]:NULLlpUsedDefaultChar [out, optional]:NULL其它参数参考 MultiByteToWideChar
Code:int requiredBufSize = WideCharToMultiByte(CP_ACP, 0, src, -1, NULL, 0, NULL, NULL);if (requiredBufSize > 0){char *pBuffer = new char[requiredBufSize];WideCharToMultiByte(CP_ACP, 0, src, -1, pBuffer, requiredBufSize, NULL, NULL);}

转载于:https://www.cnblogs.com/yipingg/p/string_widechar_multichar_switch.html

字符串操作--宽窄字符转换相关推荐

  1. C语言字符串库函数详解模拟实现(strlen、strcpy、strcat、strcmp)+字符操作函数+字符转换函数

    字符串库函数详解 一.无字符串长度限制的字符串函数 1. strlen 计算字符串长度函数 2. strcpy 字符串拷贝函数 3. strcat 字符串追加函数 4. strcmp 字符串比较函数 ...

  2. java 字符串操作_Java 字符与字符串

    字符 // 定义字符 char c1 = 'a'; char c2 = '1'; char c3 = '中'; // 自动装箱 Character c = c1; // 自动拆箱 c1 = c; // ...

  3. C++11 宽窄字符转换

    C++11增加了Unicode字面量的支持,可以通过L来定义宽字符: std::wstring str = L"中国人"; // 定义Unicode字符串 将宽字符串转换为窄字符串 ...

  4. C++ 宽、窄字符转换

    目录 locale setlocale函数 设置字符编码 单字符宽字符互相转换 mbstowcs函数 wcstombs函数 mbtowc函数 wctomb函数 宽.窄字符转换总结 查看本文前先弄清字符 ...

  5. day2 字符编码、列表、元组、字符串操作、字典

    文章目录 1.三元运算与字符串编码转换 2.列表.元组操作 3.字符串操作 4.字典操作 1.三元运算与字符串编码转换 三元运算 a,b,c = 1,3,5 d = a if a > b els ...

  6. c语言1066字符分类统计,C语言字符串操作总结大全(超详细)

    1)字符串操作strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat(p, p1) 附加字符串 strncat(p, p1, n) 附加指定长度字 ...

  7. 有关UNICODE、ANSI字符集和相关字符串操作的总结[转]

    Q UNICODE字符串如何显示 A 如果程序定义了_UNICODE宏直接用 WCHAR *str=L"unicodestring"; TextOut(0,0,str); 否则就需 ...

  8. python day2 python基础 列表、元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码...

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...

  9. python替换字符的操作_Python 字符串操作(string替换、删除、截取、复制、)

    Python 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) 去空格及特殊符号 s.strip() .lstrip() .rstrip(',') 复制字符 ...

最新文章

  1. [Bat]UNC路径不支持的2种解决方法
  2. 全网最经典26道Spring面试题总结,终获offer
  3. 大数据时代的数据挖掘
  4. Java 设计模式 -- 建造者模式
  5. 神策数据算法专家:推荐系统的实践与思考(下)
  6. 编译32位_玩转Android10源码开发定制(11)内核篇之安卓内核模块开发编译
  7. 多年前那些优秀的工程师,后来都去哪儿了?
  8. 真格量化——50etf与期权对冲策略
  9. Docker的基本使用(部署python项目)+两个奇技淫巧,将 Docker 镜像体积减小 99%
  10. jquery获取checkbox是否选中
  11. keepalived 负载 mysql 3306端口问题
  12. PAIP.MYSQL 1045 Access denied for user 'XXXX'@'loca 的解决.txt
  13. 电脑开机蓝屏时要怎么解决修复?哪种方便比较好?
  14. 让机器看了几千万篇热门文章总结的17类热门标题方式模板
  15. Web基础知识与常用技术
  16. 佛说爱情二:前生500次的回眸才换得今生的一次擦肩而过
  17. 如何获取腾讯视频的MP4播放地址及mp4文件,无需进行qlv转换mp4格式【亲测效果】
  18. 引流产品分几类?引流产品结构四类定位产品
  19. 软件测试可以做到多大岁数?
  20. c语言遍历json数组,如何使用c动态获取所有json元素?

热门文章

  1. day10-闭包函数、函数装饰器
  2. Swift3中的 GCD
  3. Sql 删除不保留日志
  4. 准备您的虚拟桌面--WinXp模板
  5. 快速排序(quicksort)算法实现
  6. Exchange-OWA与域控集成-实现单点登录
  7. 算法导论——所有点对最短路径:稀疏图Johnson算法
  8. yum使用、单用户模式、救援模式
  9. 让PHP更快的提供文件下载 【转】
  10. AWS — AWS Local Zone