字符常量是用单引号括起来的一个字符
例如:'a'、'b'、'='、'+'、'?'
•字符常量只能用单引号括起来,不能用双引号或其他括号。
•字符常量只能是单个字符,不能是字符串。
•字符可以是字符ijizhong任意字符。但数字被定义为字符型之后就不能参与数值运算。
例如:'5'和5是不同的。'5'是字符常量,不能参与运算。
--------------------------------------------------------------------------------
字符变量
字符变量用来存储字符常量,即单个字符。
字符变量的类型说明符是char。
字符变量类型定义的格式和书写规则都与真心变量相同。
例如:char a,b;
--------------------------------------------------------------------------------
字符数据在内存中的存储形式及使用方法
每个字符变量被分配一个内存空间,因此只能存放一个字符。
字符值是以ASCII码的形式存放在变量的内存单元中的。
例如:x的十进制ASCII码是120,y的十进制ASCII码是121。对字符变量a,b赋值a='x'; b='y';
实际上是在a,b两个单元内存放120和121的二进制代码:
a: 0 1 1 1 1 0 0 0
b: 0 1 1 1 1 0 0 1
所以也可以把字符型变量看作整形量。
C语言允许对整形变量赋以字符值,也允许对字符变量赋以整形值。在输出时,允许把字符变量按整形输出,也允许把整形量按字符量输出。
来看一下这个例子:
#include
main()
{
char a,b;
a=120;
b=121;
printf("%c,%c/n",a,b);
printf("%d,%d/n",a,b);
}
程序运行结果为:
x,y
120,121
--------------------------------------------------------------------------------
字符串常量
字符串常量是由一对双引号括起来的字符序列。
例如:"CHINA","$12.5","C program"
字符串常量和字符常量是不同的来那个。他们之间的区别如下:
•字符常量由单引号括起来,字符串常量由双引号括起来。
•字符常量只能是单个字符,字符串常量则可以含一个或多个字符。
•可以把一个字符常量赋予一个字符变量,但不能把一个字符串常量赋予一个字符变量。在C语言中没有相应的字符串变量。但是可以用一个字符数组来存放相应的字符串变量。在数组一节中予以介绍。
•字符常量占一个字节的内存空间。字符串常量占的内存字节数等于字符串中字节数加1.增加的一个字节中存放字符"/0"(ASCII码为0).这是字符串结束的标志。