C语言入门之数据类型(3)
字符数量
字符量包括字符常量和字符变量。
字符常数
常数是用单引号括起来的字符。例如,' a ',' b ',' = ','+','?'是合法的字符常量。在C语言中,字符常量具有以下特征:
1.字符常量只能用单引号括起来,不能用双引号或其他括号括起来。
2.字符常量只能是单个字符,不能是字符串。
3.字符可以是字符集中的任何字符。但是数字定义为字符后就不能参与数值运算了。比如‘5’和5是不一样的。“5”是字符常量,不能参与运算。
经济社会委员会
转义字符是一个特殊的字符常量。转义字符以反斜杠“\”开头,后跟一个或多个字符。转义字符有特定的含义,与字符的本义不同,所以称为“转义”字符。比如前面例子中printf函数的格式字符串中使用的“\n”就是一个转义符,它的意思是“回车换行”。转义字符主要用于表示普通字符不易表示的控制代码。
的常见转义字符及其含义
转义符
转义符的含义
\n
回车并换行
\ t
水平跳到下一个制表位置
\ v [/v] B
退格键
\ r
\ f
换行
\
A [/br
一般来说,C语言字符集中的任何字符都可以用转义字符来表示。为此,建议使用表2.2中的\ddd和\xhh。Ddd和hh分别是八进制和十六进制的ASCII码。比如101代表一个词?quota ",2代表字母“B”,4代表反斜杠,\XOA代表换行符,等等。转义字符的使用。
void main()
{
int a,b,c;
a = 5;b = 6;c = 7;
printf(" % d \ n \ t % d % d \ n % d % d \ t \ b % d \ n ",a,b,c,a,b,c);
}
该程序练习转义符的使用:
a,b,c是整数5-> a,6-> b,7-> c。
调用printf显示程序的运行结果:
printf(" % d \ n \ t % d % d \ n % d % d \ t \ b % d \ n ",a,b,c,a,b,c);
程序第一列输出值5后跟“\n”,所以回车馈;然后“\t”,所以跳到下一个制表位置(制表位置之间的间隔设置为8),然后输出一个值为6的B;空第二格输出C值7后,又是“\n”。所以,再进再喂;空两个方块后,输出值5;然后空三个方块,输出B的值6;在“\t”之后再次跳转到下一个制表位置(与上一行的6对齐),但下一个转义字符“\b”使其后退一格,于是C值7输出到6的旁边。
字符变量
变量的值是字符常量,即单个字符。变量的类型说明符是char。字符类型描述的格式和书写规则与整型变量相同。
例如:
char a,b;每个字符变量分配一个字节的内存空,所以只能存储一个字符。字符以ASCII码的形式存储在变量的存储单元中。类似x的
十进制ASCII码是120,Y的十进制ASCII码是121。给字符变量A和B取‘x’和‘y’值:A =‘x’;b = ' y实际上,120和121的二进制码存储在单元A和B中:
[br/]b 0 1 1 1 1 0 0 1
所以它们也可以看作是积分量。c语言允许将字符值赋给整型变量,也允许将整数值赋给字符变量。输出时,允许按整数量输出字符变量,也允许按字符量输出整数量。整数数量是两个字节,字符数量是一个字节。当根据字符数量处理整数数量时,只有较低的八位字节参与处理。
main(){
char a,b;
a = 120;
b = 121;
printf("%c,%c\n%d,%d\n ",a,b,a,b);
}
a ■ b ■
a b
显示程序结果char a,b。
a = 120
b = 121;
在这个程序中,A和B是字符类型,但是整型值在赋值语句中赋值。从结果来看,A和B值的输出形式取决于printf函数的格式字符串中的格式字符。当格式字符为“C”时,对应的输出变量值为字符,当格式字符为“D”时,对应的输出变量值为整数。
void main(){
char a,b;
a = ' x ';
b = ' y ';
a = a-32;
b = b-32;
printf("%c,%c\n%d,%d\n ",a,b,a,b);
}
a和B被解释为字符变量和给定的字符值。
将小写字母改为大写字母。
作为整数和字符输出。
在这个例子中,A和B被描述为字符变量和给定的字符值。c语言允许字符变量参与数值运算,即使用字符的ASCII码参与运算。因为大小写字母的ASCII码相差32,所以运算后小写字母变成大写字母。然后分别作为整数和字符输出。
【练习】//charint a = 49;
char b;
char d;
b = a+10;
d = a+b;Vtable
a,2,49
b,1,random
d,1,vtable
v更新
1,49
2,.
3、Vupdate
的' l '
of Practice
[Practice]//char C1,C2;
C1 = ' a ';c2 = ' b
C1 = C1-32;C2 = C2-32;Vtable
c1,1,random
c2,1,random
of vtable
' v更新
1,random;2、随机
1、‘a’;2,' b'
1,' A ';2、实践的“B”
0条评论