计算机二级C语言章节知识点:6.1字符型常量

考试站(www.examzz.com)   【考试站:中国教育考试第一门户】   2013年7月30日

第6章 字符型数据 6.1 字符型常量

讨论本章

  • 知识点:
  • 6.1.1 字符常量
  • 6.1.2 转义字符常量
  • 6.1.3 字符串常量
  • 6.1.4 可对字符量进行的运算

6.1.1 字符常量

  C语言中,一个字符常量代表ASCⅡ字符集中的一个字符,在程序中用单引号把一个字符括起来作为字符常量。例如,作为字符常量的小写字母a,在程序中写成′a′,以便和标识符a区别开。因此,′A′、′C′、′t′、′! ′、′? ′都是合法的字符常量。
    说明:
    (1)单引号中的大写字母和小写字母代表不同的字符常量,例如,′B′和′b′是不同的字符常量。  
    (2)单引号中的空格符U(此处用L』来代表一个空格)也是一个字符常量,但不能写成”(两
个连续的单引号)。
    (3)字符常量只能包含一个字符,因此′abc′是非法的。
    (4)字符常量只能用单引号括起来,不能用双引号括起来。例如,″a″不是字符常量,而是一个字符串。 
    字符常量在内存中占一个字节,存放的是字符的ASCⅡ代码值(请参阅附录7)。C语言规定,所有字符常量都作为整型量来处理,在计算机内部,其对应的整数值就是ASCⅡ字符集中该字符的序号(即ASCⅡ代码值)。因此字符常量′A′的值为65(八进制数l01),字母字符′a′的值为97(八进制数l41),数字字符′0′的值为48(八进制数60),空格字符
的值为32(八进制数40)。

6.1.2 转义字符常量

  转义字符又称反斜线字符,这些字符常量总是以一个反斜线开头后跟一个特定的字符,用来代表某一个特定的ASCⅡ字符,这些字符常量也必须括在一对单引号内。例如:′\n′代表回车换行符(读者在前面几章的输出语句中已经用过)、′\″代表一个单引号。表6.1列出了c语言中的转义字符。

6.1.3 字符串常量

  字符串常量是由双引号括起来的一串字符。如”STRING”就是字符串常量,在printf和scanf中的”%d%d”也是字符串常量。在c语言中,系统在每个字符串的最后自动加入一个字符′\0′作为字符串的结束标志。请注意字符常量和字符串常量的区别,例如:′\101′、′Z′是字符常量,在内存中占一个字节;而”ABC\n”、”z”是字符串常量,前者占五个字节、后者占两个字节的存储空间,其中一个字节用来存放最后的′\0′。两个连续的双引号:″″也是一个字符串常量,称为“空串”,但要占一个字节的存储空间来存放′\0′。
  有关字符串的内容将在第10章详细讨论。

6.1.4 可对字符量进行的运算

  在C程序中,字符量可参与任何整数运算。例如:
  ′B′-′A′≡66—65≡1    ′a′+1≡97+1 ≡98≡′b′
此处符号;表示等价的意思。在以上表达式中的66、65、97、98都是十进制数,它们分别是字母B、A、a、b的ASCⅡ代码值。因此很容易利用算术运算把大写字母转换成小写字母或把小写字母转换成大写字母,例如:
  ′A′+32≡65+32=97′≡a′    ′b′-32≡98≡2s66≡8′
  也可以通过算术运算把数字字符转换为整数值或把一位整数转换成数字字符,例如:
  ′9′-′0′≡57-48≡9    ′3′-′0′≡51-48≡3
  ′9+′0′≡9+48≡57≡′9′    4+′0′≡4+48≡52≡′4′
  在上述表达式中,57、48、51、52分别是用十进制数表示的字符9、0、3、4的ASCⅡ代码值。在这里,读者一定要分清诸如整数9和字符9的区别。整数9在程序中直接写成9;字符9在程序中用′9′表示,它的值是57。
  在C语言中,字符量也可以进行关系运算。如:′a′>′b′,由于在ASCⅡ代码表中,′a′的值97小于′b′的值98,所以关系运算的结果为“假”,此关系运算表达式的值为0。但是如果进行逻辑运算的话,如:′a′&&′b′,由于′a′和′b′的ASCⅡ代码值都为非零,“与”运算表达式的值为1。


相关文章