
上QQ阅读APP看书,第一时间看更新
3.6 如何在C语言中表示单个字符
在C语言里,我们可以采用char或unsigned char来表示单个字符。C语言诞生于Unicode标准面世之前,那时它所依赖的字符集是根据ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)制定的,该标准所支持的打印控制字符、设备控制字符,以及普通的字符与标点,总共只需要用7个二进制位就能涵盖,因为这些字符总共只有128种,也就是27种。
当年选用ASCII标准的一个原因是,它的大写字母与小写字母之间有很方便的对应关系。同一个字母的大写形式与小写形式只在一个二进制位上有所区别。因此,只需要翻转这个二进制位,就能在大写与小写之间切换。附录D会给出一份ASCII字符表,我们在第15章也会开发一款程序,打印出这样一张完整的表格。
下面我们概括地介绍ASCII字符集的内容。

后来,Unicode标准出现了,它采用2个字节或4个字节来表示世界上的各种语言所采用的字符。为了向后兼容,它把7位的ASCII码也涵盖了进来,确保这些编码在Unicode里面的含义,跟它们在ASCII标准中所表示的字符相同。然而,并不是所有的操作系统都实现了(或都采用同一种方式实现了)Unicode标准。