char 与 wchar_t 的互相转化
来源:互联网 发布:wps如何筛选excel数据 编辑:程序博客网 时间:2024/06/06 01:01
/* * 字符集的相互转化一直以来困扰着我 * 这篇文章主要是针对 char 和 wchar_t 的相互转化 * C的标准库对这两种不同类型的字符类型提供了不同的操作函数 * 另外说明一下,C++的标准IO库虽然解决了无类型输出的问题,但是各个编译器对它的支持有差异,不建议使用 * 相反,C的国际化得到了很好的兼容性 * 详细的可以参考下面的链接: * http://www.cnblogs.com/zyl910/archive/2013/01/20/wchar_crtbug_01.html */#include <cstdio>#include <clocale>#include <cstdlib>int main() { const int LEN = 1024; char s1[LEN] = "我是好人!"; wchar_t ws1[LEN]; char s2[LEN]; wchar_t ws2[LEN] = L"你也是好人!"; int ret = 0; char *locale_buffer = setlocale(LC_ALL, NULL); setlocale(LC_ALL, ""); ret = mbstowcs(ws1, s1, LEN); if (ret == LEN) ws1[LEN-1] = L'\0'; printf("%s", s1); putchar('\n'); if (ret) printf("%ls", ws1); putchar('\n'); ret = wcstombs(s2, ws2, LEN); if (ret == LEN) s2[LEN-1] = '\0'; printf("%ls", ws2); putchar('\n'); if (ret) printf("%s", s2); putchar('\n'); setlocale(LC_ALL, locale_buffer); return 0;}
0 0
- char 与 wchar_t 的互相转化
- wchar_t 与 char 的互相转换
- wchar_t和char,WCHAR和CHAR的区别和互相转化
- wchar_t*和char*之间的互相转换
- char*互相转换wchar_t*
- char wchar_t CString的相互转化
- wchar_t 与 char的转换
- char与wchar_t的区别
- char与wchar_t的区别
- char和wchar_t互相转换
- wchar_t*和char*之间的互相转换的那些事
- wchar_t*和char*之间的互相转换的那些事
- wchar_t*和char*之间的互相转换的那些事
- unicode与多字节工程,char与WCHAR_T转化
- string CString char* wchar_t* 转化
- CString Char *互相转化
- wchar_t和char的相互转化和测试
- char 、 unsigned char 互相转化
- 2.1进程与线程
- B1048. 数字加密(20)
- 一段强大的shellcode
- 02python_basis
- C 标准库 abs 函数的实现
- char 与 wchar_t 的互相转化
- BestCoder Round #65 ZYB's Biology
- 抢单系统,秒杀发红包系统,秒杀的架构在设计过程中需要考虑到那些问题,需要应用到哪些技术?
- 单链表反转
- windows linux Git使用总结
- BestCoder Round #65 ZYB's Game
- Servlet中获取spring bean的管理对象
- Angular JS 学习笔记3
- BestCoder Round #65 ZYB's Premutation