[转帖]单字节字符串、宽字符串和多字节字符串

单字节,字符串,字节 · 浏览次数 : 0

小编点评

**单字节字符串** * 原理:每个字符用一个字节表示。 * 存储:一个byte储存。 * 应用:ASCII 字符集以及许多欧洲语言。 **宽字符串** * 原理:Unicode是一种所有的字符都使用两个字节编码的编码模式。 * 存储:2个字节存储。 * 应用:不论数字,英文,还是其他字符都用2个字节标识,大大提高了字符串的兼容性 **多字节字符串** * 原理:多字节字符串可以包含单字节和双字节字符混合。 * 存储:多字节字符串可以包含单字节和双字节字符混合。 * 应用:对于诸如泰语和越南语之类的语言,一些遗留编码具有多字节字符集的一些复杂性,但是实际上仅仅基于组合字符,并且通常不与广义术语“多字节”混淆。

正文

调查报告:了解单字节字符串、宽字符串 和多字节字符串等C/C++语言字符串表示方 法,总结其原理、存储、操作、应用等特 征,并编制报告。

单字节字符串(Single-Byte): 原理:每个字符用一个字节表示。这就决定了单字节字符集不可能包含256个以上 的字符。单字节字符包含拉丁文字母表,重音字符(accented characters)及ASCII标准和DOS操作系统定义的图形字符。存储:一个byte储存。单字节NULL字符(“\0”)的值是 0x00 并且指示终止空字符。操作: char类型操作。
应用:范围 0x00 到 0xFF。表示ASCII 字符集以及许多欧洲语言。

宽字符串(Wide Character),也称为Unicode字符。原理:Unicode是一种所有的字符都使用两个字节编码的编码模式。存储:2个字节存储。宽字符串使用两个字节表示的0作为它的结束标志。操作:wchar_t操作。应用:不论数字,英文,还是其他字符都用2个字节标识,大大提高了字符串的兼容性

多字节字符串:原理:多字节字符集 可能包括单字节和双字节字符。 储存:多字节字符串可以包含单字节和双字节字符混合。 两位的多字节字符有一个前导字节和尾字节。多字符字符串的结束标志也是一个单字节表示的0。 操作:在Shift-JIS编码中(一个常用的日文编码模式),0x81-0x9f之间和0xe0-oxfc之间的值表示"这是一个双字节字符,下一个子节是这个字符的一部分。“这样的值被称作"leadingbytes”,他们都大于0x7f。跟随在一个leadingbyte子节后面的字节被称作"trailbyte"。在某个多字节字符集内,前导字节位于某个特定范围内,尾字节也一样。 当这两种范围重叠时,可能需要计算上下文以确定某个给定的字节是用作前导字节还是尾字节。应用:对于诸如泰语和越南语之类的语言,一些遗留编码具有多字节字符集的一些复杂性,但是实际上仅仅基于组合字符,并且通常不与广义术语“多字节”混淆。

与[转帖]单字节字符串、宽字符串和多字节字符串相似的内容:

[转帖]单字节字符串、宽字符串和多字节字符串

调查报告:了解单字节字符串、宽字符串 和多字节字符串等C/C++语言字符串表示方 法,总结其原理、存储、操作、应用等特 征,并编制报告。 单字节字符串(Single-Byte): 原理:每个字符用一个字节表示。这就决定了单字节字符集不可能包含256个以上 的字符。单字节字符包含拉丁文字母表,重音字符

[转帖]总结:正则表达式

一、重要点整理 ^ 为匹配输入字符串的开始位置。 [0-9]+匹配多个数字, [0-9] 匹配单个数字,+ 匹配一个或者多个。[^…] 排除型字符组。 abc$匹配字母 abc 并以 abc 结尾,$ 为匹配输入字符串的结束位置。 正则表达式由两种字符构成。一种是在正则表达式中具体特殊意义的“元字符

[转帖]MySQL数据类型(decimal的存储大小)

本来还以为MySQL的数据类型挺简单的,没想到竟然有很多坑,容我仔细道来 MySQL数据类型 整数类型(注意是字节) 浮点型(重点关注decimal) 字符型(注意这是4.x版本的定义,5.x以后已经将其中的字节转换成字符了) 日期类型 MySQL日期类型表示方法与字符串的表示方法相同(用单引号括起

[转帖]egrep及扩展的正则表达式

egrep: egrep = grep -E 语法:egrep [选项] PATTERN [FILE...] 扩展正则表达式的元字符: 字符匹配: .:匹配任意单个字符; [ ]:匹配指定范围内的任意单个字符; [^]:匹配指定范围外的任意单个字符; 次数匹配: *:匹配前面的字符任意次(*自身仅表

[转帖]jmeter必备正则表达式

元字符 . 注意是一个点号,表示匹配任意单个字符 \d 表示匹配任意单个数字 [0-9] 等价于0-9 [a-zA-Z] 等价于所有的大小写字母 限定符 + 加号,表示匹配至少大于1次(1次或多次) ?问号,便是匹配0次或1次 * 星号,匹配0次或多次,贪婪匹配 {n,} {n,m} {m} 匹配限

[转帖]Linux Shell sort排序常用命令

https://www.jianshu.com/p/75c69236963f 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。 [rocrocket@rocrocket programming]$ ca

[转帖]linux块I/O总体概括

直接先上重点,linux中IO栈的完全图如下: 系统中能够随机访问固定大小数据片的硬件设备称作块设备。固定大小的数据片称为块。常见的块设备就是硬盘了。不能随机访问的就是字符设备了,管理块设备比字符设备要复杂很多。 块设备中最小的可寻址单元是扇区,一般是2的整数倍,最常见的是512字节。不过很多CD-

[转帖]带宽与流量基本概念

一 带宽与流量基本概念 带宽:统计单位是比特/秒(bps),通常运营商提供的承诺(up to)一般为512Kbps,1Mbps,2Mbps等。 流量:客户上网发送和接收的数据量总和,常用统计单位为字节(Byte)。 二 换算关系 1Byte=8bits(1字节为8比特)因此: 1Byte/sec=8

【转帖】带宽与流量的基本概念(更新)

一 带宽与流量基本概念 带宽:统计单位是比特/秒(bps),通常运营商提供的承诺(up to)一般为512Kbps,1Mbps,2Mbps等。 流量:客户上网发送和接收的数据量总和,常用统计单位为字节(Byte)。 二 换算关系 1Byte=8bits(1字节为8比特)因此: 1Byte/sec=8

[转帖]Linux shell 单引号和双引号

https://www.cnblogs.com/airoot/p/15324883.html 在编写shell脚本的时候经常会用到引号,有些时候却老是忘记单引号和双引号之间的区别,所以就整理一下供以后脑子不好使了的时候前来复习一下。首先说下他们的共同点: 好像就只有一个,就是它们都可以用来界定一个字