当前位置:文档之家› 标识符

标识符

标识符(考试重点)
在C语言中用于标识名字的有效字符序列称为标识符。

标识符可以用作常量名、变量名、符号名、函数名和后面要学到的指针名、数组名等。

C语言中标识符的命名规则如下:
1)标识符只能由字母、数字和下划线组成;
2)标识符的第一个字符必须是字母或下划线。

3)标识符区分大小写字母。

如int与Int是两个完全不同的标识符。

合法的标识符:
a x sum spels program ab1 _to file_5 a1b2c3 _2 B3
非法的标识符:
ab12# (含有不合法的字符“#”)
a1-c (含有不合法的字符“-”)
ab c (空格不是合法标识符)
πr (“π”不是字母,为不合法标识符字符)
23ab (第一个字符不能为数字)
C语言的标识符分为如下三类:
1)关键字
关键字是具有特定含义的、专门用来说明C语言特定成分的一类标识符。

关键字均由小写字母构成。

Int 就不是关键字。

2)预定义标识符
预定义标识符(如printf,scanf,sin,isalum等)和编译预处理命令名(如define,include 等)。

注意,预定义标识符可以作为“用户标识符”使用。

3)用户标识符(考试重点)
不能是关键字;只能由字母、数字和下划线组成;第一个字符必须是字母或下划线。

Int可以作为用户标识符,int就不可以作为用户标识符。

考点:1. 识别哪些是(或不是)标识符
2. 识别哪些是(或不是)用户标识符
例2:以下不能定义为用户标识符的是
A)scanf B)V oid C)_3com_ D)int
分析:本题答案选D。

因为int是关键字,关键字不能作为用户标识符。

答案(A)的scanf虽然是预定义标识符,但是预定义标识符可以作为用户标识符使用。

(B)中V oid 的第一个字符V大写,它与关键字void是两个不同的标识符,故它可以作为用户标识符。

(C)中的_3com_符合标识符的命名规则,且不是关键字,故可以定义为用户标识符。

例3:以下不合法的用户标识符是
A)j2_KEY B)Double C)4d D)_8_
分析:本题答案选C。

答案(A)是一个用户标识符,符合标识符的命名规则。

答案(B)也是用户标识符,需要注意的是,它与关键字double是两个不同的标识符。

答案(D)是用户标识符,由数字和下划线组成,且第一个字符为下划线。

只有答案(C)是不合法的用户标识符,因为它的第一个字符是数字,不符合标识符的命名规则。

标识符的常见错误:
1. 数字开头
2. 包含减号“-”
3. 用户标识符使用的是关键字
4、常量。

C语言中,还有另外一种常量是用标识符命名的,称为符号常量。

下面程序的PI 就是符号常量。

例4:计算圆面积的C语言程序
#define PI 3.14159
main( )
{ float r,area;
r=12.5;
area=PI*r*r;
printf("area=%f\n",area);
}
程序的第一行是宏定义,以后遇到PI就用其后的内容——3.14159来原样替换。

这里的PI就是一个符号常量。

通常,符号常量用大写字母表示,但这并不是语法上的要求,只不过用大写字母书写符号常量,便于辨认。

当进行宏定义后,程序中只要用到相应的数值常量都可以用符号常量代替,这就给程序的修改提供了方便。

例如,如果需要进一步提高圆周率的精度,可以直接修改宏定义中的数值常量:
#define PI 3.1415926
这样,程序中只要用到PI的地方,其值都自动变为3.1415926。

5、变量
与常量对应的是变量。

顾名思义,变量就是在程序的运行过程中其值可以改变的量。

例1中的a,b都是变量,它们是由用户定义的标识符,变量的命名必须遵循标识符的命名规则。

用盒子的理论来描述:
1) 变量就是盒子,里面装的内容可以改变。

2) 通过赋值语句就可以改变盒子里的内容。

3) 每次使用盒子时,盒子里都应该有确切的内容而不能是不确定的值。

4) 每次使用盒子时,都是用的现在盒子里装的内容。

以前装过什么内容没有任何影响。

相关主题