
2.1.3 常量和变量
常量:在程序运行过程中,其值不能被改变的量。常量也分为不同类型:
(1)整型常量,如150。
(2)浮点型常量,如12.3(也称为实型常量)。
(3)字符常量:用一对单引号包含起来的一个字符,如'a'。
这里用printf语句输出一个结果信息作为演示,printf语句前面提过,是C语言中用于输出结果信息的语句,能将双引号中的内容进行输出,但当在双引号所含的内容中遇到%d时,会用后面的和值进行替换(%d是一个格式符,专门用来显示一个十进制整数),因此,如下语句:

输出的结果信息是:

下面将逐步引入变量的概念,在此之前,首先引入标识符、保留字这两个概念。
(1)标识符:好像人的名字(如张三、李四),由字母、数字、下画线三种字符组成,并且第一个字符为字母或者下画线。例如,test、icount、_myclass都是合法的标识符。
(2)保留字:系统保留起来,有特殊的用途,所以不能将保留字作为标识符来使用,否则会出现语法错误。保留字如图2.10所示,这些保留字不必死记硬背,随着使用次数增多,慢慢就会熟悉。
那什么是变量?变量与常量不一样,常量一般是一个字面值。例如,13就是一个字面值,看看变量的定义。
变量:其值可以改变的量。变量肯定会有一个变量名,在内存中会占用一定的存储空间,变量名其实就是一个标识符,同时,变量名是区分大小写的,大小写不同的变量会被认为是两个不同的变量。

图2.10 C/C++中的保留字
变量遵循先定义后使用的原则,定义变量时遵循如下格式:

其中,[]中的内容可以省略,在格式表达中,凡被[]括起来的内容都表示可以省略。
如下范例定义了两个不同的变量,因为这两个变量最后一个字符的大小写不同:

变量名的长度没有具体标准,即便是几十上百个字符也可以,但一般10~20个字符长度就足够了。变量如何起名字呢?参考如下变量的命名方法:

在这个变量名中,第一个字符表示类型,这里i表示int类型,然后用几个单词的组合,每个单词首字母大写,这样以后见到变量名就知道该变量表达的含义。