
2.1 常量与变量
1.常量和变量
(1)常量
常量是一种在程序运行过程中其类型和值保持固定不变的量。
C语言一般常量的表示和日常生活中常量的表示基本相同,如123,0,5.60等。例2.1中的PI和常数1都是常量。
(2)变量
变量是在程序运行过程中可以改变、可以赋值的量。在C语言中,变量必须遵循“先定义后使用”的原则,即每个变量在使用之前都要用变量定义语句将其声明为某种具体的数据类型。例2.1中的r和s就是变量。
相关知识1
变量具有三要素:名称、类型和值。
(1)变量定义
变量定义语句的形式如下:
类型变量名1[,变量名2,…];
其中,方括号内的内容为可选项。可以同时声明多个相同类型的变量,它们之间需要用逗号分隔。例如:
int a,b,c;表示声明三个整型变量。这一部分内容将在2.2节中详细介绍。
说明:C程序中的变量必须先定义后使用,而且表达式中的变量必须具有确定的值。
(2)变量赋初值
C语言允许在定义变量时对变量进行初始化,即对变量赋初值。例如:
给部分变量赋初值:
int n1,n2,n3=5;
表示将n1,n2和n3定义为整型变量,并对n3赋初值为5。
可以对所定义的变量中一部分或全部赋初值,也可以对多个变量赋予相同的初值。但要注意,int x=y=2;只表示x和y具有相同的初值,并不表示在程序中x和y的值一直相等。
在定义变量的同时对变量赋初值将使程序简洁,提高程序的可读性。
2.标识符
程序中所用到的每一个变量都应该有相应的名称作为标识。给程序中的实体——变量、常量、函数、数组、结构体及文件名称称为标识符。简单地说,标识符就是一个名称。
①标识符只能由英文字母(A~Z、a~z)、数字(0~9)和下画线(_)三类符号组成,且第一个字符必须为英文字母或下画线。
②不允许使用关键字作为标识符的名称,因为关键字是系统已经定义过的具有特殊含义的标识符(C语言的关键字参看附录B)。另外,还有一些名称虽然不是关键字,但是系统已把它们留做特殊用途,如系统使用过的函数名等,用户也不要使用它们作为标识符(如main),以免引起混乱。
③标识符命名应以直观且易于拼读为宜,即做到“见名知义”,最好使用英文单词及其组合,这样便于记忆和阅读。
④标识符区分大小写。例如,sum、Sum和SUM是三个不同的标识符。虽然C程序严格区分大小写,但为避免引起混淆,程序中最好不要出现仅靠大小写区分的相似标识符。
【例2.2】找出下列符号中合法的标识符。
3aB "abc" a.b b int
next a3B ok? π _switch
合法的标识符有:b,next,a3B,_switch;其他为不符合上述命名规则的非法标识符(其中int为系统关键字),请读者自己分析。若程序中用到希腊字母可用谐音代替,如例2.2中的π可用pi代替。
课后讨论
①常量和变量的区别。
②在C程序中,可以使用没有定义的变量吗?定义了变量没有使用,可以吗?