2.2.3 字符型常量
1.字符型常量的表示方法
C语言中,字符型常量是用单引号括起来的一个字符。如'A','a','?'等。
构成一个字符常量的字符可以是ASCII字符集中除单引号本身(′)、双引号(")、反斜杠(\)以外的任意字符。注意:'a'和'A'是不同的字符常量。
除了以上形式的字符常量外,还有一种特殊形式的字符常量,就是以反斜杠\开头的字符序列。例如,'\0',称为转义(escape)字符,意思是将反斜杠\后面的字符转换成另外的意义。
C语言的转义字符有三种:简单转义字符、八进制转义字符和十六进制转义字符。
(1)简单转义字符
常用的简单转义字符见表2.2.1。
(2)八进制转义字符
由反斜杠\和1~3个八进制数字构成。例如'\071'(代表ASCII码(十进制数)值为57的数字字符'9')。
(3)十六进制转义字符
由反斜杠\、字母x和1~2个十六进制数字构成。例如'\xFE'(代表ASCII码(十进制数)值为254的图形字符'■')。
表2.2.1 转义字符及其含义
十六进制转义字符可以表示任何可输出的字符、专用字符、图形字符和控制字符,对使用扩展ASCII码表中的图形符号字符(128~255)特别有用。
2.在内存中的存放形式
字符型数据在存储时,存储的是字符相应的ASCII码值。例如,字符'c'的ASCII码值是99,'C'的ASCII码值是67,它们在内存中的存放形式如图2.2.3所示(实际上是以二进制形式存放的)。
图2.2.3 'c'和'C'在内存中存放形式
字符型数据在内存中的存储形式与整数的存储形式一致;字符型数据和整型数据之间可以通用。
一个字符型数据既可以以字符形式输出,也可以以整数形式输出。以字符形式输出时,先将存储单元中的ASCII码转换成相应字符后再输出;以整数形式输出时,直接输出其ASCII码。也可以对字符数据进行算术运算,此时相当于对它们的ASCII码进行算术运算。
数据的输出将在2.7节中详细介绍。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。