a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 84|回复: 0

[C语言] 2012年计算机二级C语言字符型数据考点小结

[复制链接]
发表于 2012-7-31 21:48:08 | 显示全部楼层 |阅读模式
6.1 字符常量 4 o! I# x5 o, f; @; X6 ]3 @
  有两种形式:一是用单引号括起来的一个单字符,如′a′,′?′,′=′;二是″转义字符″,即以″\″开头的字符序列。常用的转义字符见下表。
  ~& X- L9 A) `- x; P9 E  字符形式 功 能 8 e" W( p$ L3 I; i
  \n 换行 3 Q! E  f& n+ W; b% I9 H" {* @, {/ I7 Q
  \t 横向跳格(即跳到下一个输出区)
0 B& I  `/ M9 w, p- [  \v 竖向跳格 ' k8 N# q7 ~: u# q
  \b 退格 9 n2 x6 J* J- q+ Q9 }/ a
  \r 回车 2 p# p+ C, g4 _
  \f 走纸换页 $ v. l! w0 S. v# r* D9 @" G9 K
  \\ 反斜杠字符″\″ ! Q2 \; M; H, S, q9 V' [8 ]9 v
  \′ 单引号(撇号)字符
+ ]) S: C) @  |' q  \″ 双引号(″)字符
4 n5 a4 K$ j, }  \ddd 1到3位8进制数所代表的字符,如\123,表示8进制数123 $ q1 q) ^5 a" n' N
  \xhh 1到2位16进制数所代表的字符,如\x21,表示16进制数23 ! z2 y9 a% ]2 i" X9 G$ c' q
  在转义字符赋给字符变量时,也需要在其二侧加单引号,如:
' v7 P' ~0 \4 `* a. O  char c=′\n′;
7 p4 @3 |0 g% Z" x1 U# x, L  字符串常量是用一对双引号括起的字符序列,如″abc\n″。 * z. f0 s5 ^, N+ N% L
  请区别字符变量和字符串常量。′a′是字符常量,″a″是字符串常量。在内存中,字符常量占一个字节,而对字符串常量,则在字符串的后面加一个″字符串结束标志″,以便系统据此判断字符串是否结束。用′\0′(即ASCII代码为0的字符,即″空字符″)作为字符串结束的标志。例如,′a′内存占两个字节,即:a \0 。 * G1 p6 o- P! @% N7 A7 s" c. l0 O
  6.2 字符变量 ) B* r1 P$ e6 e4 d& O. O* p- n
  字符变量用来存放一个字符常量,字符变量用char来定义。如: ; Z8 b" X6 K, }5 {; Q) q3 b! b
   char a,b;
& N# q  W2 p6 p) I   a=′0′;b=′k′; 7 H9 K7 n. \& ?& p* w
   printf(″%c %c \n″,a,b); * w; Q$ {6 K( v2 R$ A
  将输出两个字符ok。 ) G7 d. R1 n, u0 m- p* x2 L9 J
  不能将一个字符串常量赋给一个字符变量,如: , r; j0 R% j& p4 o
  a=″0″;b=″k″; * ]2 L! U; B3 V6 R
  是错误的。
! W0 S1 I/ c) k  给字符变量赋值可以采用如下三种方法:
- `6 ~3 a5 \/ C; k# \* a6 Y  (1)直接赋以字符常量,如char=′A′;
9 y3 v3 R& y- m( c3 H' p0 K. f  (2)赋以″转义字符″,如: $ N9 O6 m% u7 Q. x: {
  char c=′\\′;
. h$ B: U& l# {# n3 R; q; }  printf(″%c″,c); 9 p- p4 Y: i7 p, F, X5 {; ]
  输出一个字符″\″。
. C; A9 z! Y* G" I% W& j! @* L9 Q: k" t1 p  (3)赋以一个字符的ASCII代码,如字符′a′的ASCII代码为97,则
' N0 x  R3 J; p; ~" {$ |+ P  char c=97;
, }& v/ _/ P' h* a  V; X: C8 ]8 r; N  printf(″%c″,c); + X2 z+ S8 c* m6 L7 W' H
  将输出一个字符″a″。实际上,字符数据在内存中是以整数形式(字符ASCII代码)存放的,例如,字符′a′的ASCII码为97,在内存字节中的存放形式为:
- |( f9 |& j9 S6 l0 T  01 10 00 01 2 x" K: O& s, |; E1 G
  在输出时,如果指定输出字符的格式符″%c″输出,则输出字符′a′(在输出时先将ASCII码转换为字符)。如果指定按输出整数的格式″%d″输出(如printf(″%d″,c)),则输出一个整数97。
5 w4 m. W, y$ r1 Y: @  应记住,字符数据与整型数据二者间是通用的,可以互相赋值和运算,如:
) Y0 Q' q( e1 y+ B   int a=′A′; - a3 o1 ?% o, G
   char c=97; 0 \) X2 p# i" z4 y4 q( T9 I  z, m
   print(″%d\n″,c-a);   将输出一个整数32,因为′A′的ASCII码为65。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-22 14:52 , Processed in 0.157188 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表