2012年计算机二级C语言字符型数据考点小结
3165 点击·0 回帖
![]() | ![]() | |
![]() | 6.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 。 6.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。 | |
![]() | ![]() |