编辑: 王子梦丶 | 2013-06-08 |
33 基本数据类型、运算符与表达式 第章33.2 常量、变量和标识符 C 语言中存在着两种表征数据的形式:常量和变量.常量用来表示数据的值,变量不 仅可以用来表示数据的值,而且可以用来存放数据,因为变量对应着一定的内存单元.但 变量甚至常量以及后面要介绍的函数常常需要一个名字(即标识符)来表示才能使用,所 以首先介绍标识符及其命名规则. 1.标识符 1)标识符的定义 用来标识变量、常量、函数等的字符序列. 2)标识符的命名规则 (1)有效字符:只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线. (2)有效长度:最长
32 个字符.随系统而异,但至少前8个字符有效.如果超长,则 超长部分被舍弃. 例如,由于 student_name 和student_number 的前8个字符相同,有的系统认为这两个 标识符是同一个标识符而不加区别.在TC2.0 及BC3.1 中,变量名(标识符)的有效长度 为1~32 个字符,默认值为 32,但在 VC 中其长度可达到 255. (3)C 语言的关键字(又叫保留字)不能用作变量名(关键字见附录 C) . (4)C 语言对英文字母的大小写敏感, 即同一字母的大小写, 被认为是两个不同的字符. 3)标识符的命名习惯 (1)变量名和函数名中的英文字母一般用小写,以增加可读性. (2)见名知义,即通过变量名就知道变量值的含义.通常应选择能表示数据含义的英 文单词(或缩写)作变量名,或汉语拼音字头作变量名. 例如,name/xm(姓名) 、sex/xb(性别) 、age/nl(年龄) 、salary/gz(工资) . (3)字符不易混淆.如数字
1 与字母 l、数字
0 与字母 O 等. 2.常量 1)常量的定义 程序运行时其值不能改变的量(即常数) . 2)常量的分类 (1)直接常量:又称值常量,主要包括整型常量(如
10、
15、-
10、-30) 、实型常 【思考题 3-1】 在C语言中,变量名 total 与变量名 TOTAL、ToTaL、tOtAl 等是同一个变量吗? 【思考题 3-2】 判断下列标识符号的合法性. sum Sum M.D.John day Date 3days student_name #33 lotus_1_2_3 char a>
b _above $123
34 C 语言程序设计教程(第二版) 量(如12.
5、30.
0、-1.5) 、字符常量(如'
A'
、'
b'
、'
c'
) 、字符串常量(如 sum 、 A 、
123 ) . (2)符号常量:用标识符来代表常量.定义一个符号常量需要使用一条预处理命令 #define,其定义格式为: 例如: #define NUM
20 #define PI 3.1415926 有了上面的两行文本, NUM 的值就是 20, PI 的值就是 3.1415926. 定义一个符号常量, 实际上就是为一个值常量起个名字.关于预处理命令#define 的详细用法见第
10 章. 【例3-1】 符号常量举例.
1 #include
2 #define PRICE
30 3
4 void main ( )
5 {
6 int num, total;
7 8 num = 10;
9 total = num * PRICE;
//PRICE 是符号常量,它代表常量
30 10 printf ( total = %d , total);
11 } 运行结果 使用符号常量的好处如下: ? 含义清楚.在例 3-1 的程序中,从字面上就可知道 PRICE 代表价格.因此定义符 号常量名时应考虑 见名知义 . ? 在需要改变一个常量时能做到 一改全改 . 如果在一个程序中多处用到物品的价格, 若价格用常数表示,则在价格调整时,就需要在程序中作多处修改,很不方便,且 易出错.若用符号常量 PRICE 代表价格,只需改动一处即可.如例 3-1 中的第
2 行, total=300 #define 符号常量 常量 注意: ? 在用#define 定义符号常量时,行尾一般不能有分号,除非特意这样做;