您当前所在的位置: 首页 > 资格等级 > 计算机等级 > 正文
计算机二级C语言辅导:字符型数据
发布日期:2012-10-23 08:42:00 来源:考试大在线

  1 字符常量

  有两种形式:一是用单引号括起来的一个单字符,如′a′,′?′,′=′;二是″转义字符″,即以″\″开头的字符序列。常用的转义字符见下表。

  字符形式 功 能

  \n 换行

  \t 横向跳格(即跳到下一个输出区)

  \v 竖向跳格

  \b 退格

  \r 回车

  \f 走纸换页

  \\ 反斜杠字符″\″

  \′ 单引号(撇号)字符

  \″ 双引号(″)字符

  \ddd 1到3位8进制数所代表的字符,如\123,表示8进制数123

  \xhh 1到2位16进制数所代表的字符,如\x21,表示16进制数23

  在转义字符赋给字符变量时,也需要在其二侧加单引号,如:

  char c=′\n′;

  字符串常量是用一对双引号括起的字符序列,如″abc\n″。

  请区别字符变量和字符串常量。′a′是字符常量,″a″是字符串常量。在内存中,字符常量占一个字节,而对字符串常量,则在字符串的后面加一个″字符串结束标志″,以便系统据此判断字符串是否结束。用′\0′(即ASCII代码为0的字符,即″空字符″)作为字符串结束的标志。例如,′a′内存占两个字节,即:a \0 。

  2 字符变量

  字符变量用来存放一个字符常量,字符变量用char来定义。如:

   char a,b;

   a=′0′;b=′k′;

   printf(″%c %c \n″,a,b);

  将输出两个字符ok。

  不能将一个字符串常量赋给一个字符变量,如:

  a=″0″;b=″k″;

  是错误的。

  给字符变量赋值可以采用如下三种方法:

  (1)直接赋以字符常量,如char=′A′;

  (2)赋以″转义字符″,如:

  char c=′\\′;

  printf(″%c″,c);

  输出一个字符″\″。

  (3)赋以一个字符的ASCII代码,如字符′a′的ASCII代码为97,则

  char c=97;

  printf(″%c″,c);

  将输出一个字符″a″。实际上,字符数据在内存中是以整数形式(字符ASCII代码)存放的,例如,字符′a′的ASCII码为97,在内存字节中的存放形式为:

  01 10 00 01

  在输出时,如果指定输出字符的格式符″%c″输出,则输出字符′a′(在输出时先将ASCII码转换为字符)。如果指定按输出整数的格式″%d″输出(如printf(″%d″,c)),则输出一个整数97。

  应记住,字符数据与整型数据二者间是通用的,可以互相赋值和运算,如:

   int a=′A′;

   char c=97;

   print(″%d\n″,c-a);

  将输出一个整数32,因为′A′的ASCII码为65。

 

计算机二级C语言辅导:字符型数据
字体: A+ A A-