就非西欧字符而言,比如中国以及港澳台,在任何编程语言的开发中都不得不考虑字符集及其表示。在c++中,对于超过1个字节的字符,有两种方式可以表示:

1、多字节表示法;通常用于存储(空间效率考虑)。

2、宽字符表示法,通常用于程序中(性能考虑)。

目前最主要或最常见的字符集应该来说包括:

ASCII,7位。

ISO-Latin-1/ISO-8859-1,8位。

UCS-2,16位定长。

UTF-8,8-32位变长。

UTF-16,16或32位变长。

UCS-4/UTF-32,32位定长。

对于特定的字符,各编码格式所占的字节数和编码值如下:

说到UTF-16/UTF-32,不得不说BOM(byte order mark),它的作用跟网络编程中的字节码顺序概念一样,用于标识使用big endian或者little endian。

无BOM的字节流开始:

带BOM的字节流开始:

在c++中,并没有原生支持GBK/GB18050/UTF-8的编码,如下:

基本上广泛用的就是char和wchar_t。

对于常规控制台输入的,基本上网上很多demo了,所以接下去来看下从文件或者网络socket端过来的utf-8或者GBK编码如何处理的。

转载于:https://www.cnblogs.com/zhjh256/p/6351266.html

c++中的字符集与中文相关推荐

  1. mysql中更改字符集为utf8mysql中文输入不了问题解决

    mysql中更改字符集为utf8&&mysql中文输入不了问题解决 参考文章: (1)mysql中更改字符集为utf8&&mysql中文输入不了问题解决 (2)http ...

  2. python中怎么输出中文-python中使用print输出中文的方法

    看Python简明教程,学习使用print打印字符串,试了下打印中文,不行. 编辑环境:IDLE 上网搜了下解决办法,各种说法,试了两种: print u"学习" print (u ...

  3. mysql8中文排序_mysql中utf8编码的中文字段按拼音排序

    http://blog.s777n.net/orderbychinesefieldutf8/comment-page-2/ 2010-08-24 17:36 by TomorrowMan | 分类: ...

  4. pythonprint中文教程_python中使用print输出中文的方法

    看Python简明教程,学习使用print打印字符串,试了下打印中文,不行. 编辑环境:IDLE 上网搜了下解决办法,各种说法,试了两种: print u"学习" print (u ...

  5. 七、MySQL中的字符集 - 系统的撸一遍MySQL

    2019独角兽企业重金招聘Python工程师标准>>> 什么是字符集? 计算中的字符文字集合(每个自负文字分配一个对应的数字),将字符集中的文字符号进行编码以便于计算机识别处理. 字 ...

  6. mysql 支持中文的字符集_MySQL 中文显示乱码

    最近关于中文显示乱码的贴子比较多,所以也做了个总结: 不同的编码格式会导致同一字符,在不同字符集下的编码会不同.同样同一编码在不同的字符集中代码的字符也不相同.当你的MySQL返回的字符串的编 码格式 ...

  7. python中print是什么意思中文-python中使用print输出中文的方法

    看Python简明教程,学习使用print打印字符串,试了下打印中文,不行. 编辑环境:IDLE 上网搜了下解决办法,各种说法,试了两种: print u"学习" print (u ...

  8. Oracle之 dmp导入/导出、数据库操作等过程中的字符集问题

    Oracle之 dmp导入/导出.数据库操作等过程中的字符集问题 开篇:因为要定位一个 关于dmp文件导入的乱码问题, 于是乎我开始了漫长了 Oracle字符集搜索之路,网上关于讲解oracle字符集 ...

  9. oracle客户端查看字符集,oracle 中文乱码---查看和修改客户端字符集

    客户端NLS_LANG的设置方法 Windows: # 常用中文字符集set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK # 常用unicode字符集 set ...

最新文章

  1. Vue笔记(五)——Token生命周期
  2. Swift之Vision 图像识别框架
  3. Qt (5.10.0)for android
  4. for vue 一行2列_JAVA基础练习试题(2)蓝桥杯 附源代码
  5. 深度学习:tensorflow层次结构,朴素NN代码实现tensorflow
  6. 电子设计大赛作品_第十四届电子设计大赛圆满结束!
  7. ISCC2014-reverse
  8. scp带密码后台传输
  9. POJ 2942Knights of the Round Table(二分图判定+双连通分量)
  10. 屏幕快照之旅:Android 4.2 Jelly Bean的10个新功能
  11. html入住登记源码,酒店客户入住登记管理系统设计与实现.doc
  12. 计算机课word实验总结,大学计算机操作实践报告【实验8】Word2010综合实验
  13. 报错:Unhandled exception
  14. Hibernate框架基础——cascade属性
  15. 手表无线充电控制芯片方案的原理分析主控SOP8外置挂个AO3400或SI2302
  16. python定时关机程序_Python练习小程序之定时关机小脚本(代码教程)
  17. 【Gem5】有关gem5模拟器的资料导航
  18. 在线观看北京奥运会直播 在网上看奥运会直播
  19. 进程文件ntvdm.exe
  20. VB.NET回车/换行组合符

热门文章

  1. 45个纯 CSS 实现的精美边框效果【附演示和源码】【上篇】
  2. PHP iconv()函数转字符编码的问题(转)
  3. java 故障排查_java线上服务问题排查
  4. 计算机数控装置论文,数控专业(论文)范文.doc
  5. python方法调用名字不一样_python中调用父类同名方法
  6. python 微信爬虫_python3简单实现微信爬虫
  7. soapui工具_python接口自动化(四)--接口测试工具介绍(详解)
  8. java一个点围着另一个点转_Java:按指定的度数值旋转另一个
  9. NumSharp v0.8.0 发布,C# 张量计算库
  10. jq 切换功能toggle