
3.2 标识符

1.标识符的概念
标识符可以简单地理解为一个名字,用于标识变量名、常量名、函数名、数组名等。
2.设置标识符的规则
在C语言中标识符需要遵循一定的规则,具体规则如下。
1)所有标识符必须以字母或下画线开头,不能以数字或符号开头。
例如,以下两种写法都是错误的:

以下两种写法都是正确的:

2)在标识符中,除了开头外,其他位置都可以由字母、下画线或数字组成。
●在标识符中有下画线的情况:

●在标识符中有数字的情况:

3)在C语言中,英文字母是区分大小写的。也就是说,英文字母的大小写不同,代表不同的标识符。下面是一些正确的标识符:

从上面列出的标识符中可以看出,只要标识符中有一个字符是不同的,它们所代表的就是不同的名称。
4)标识符不能是关键字。关键字是定义一种类型使用的特殊字符,不能使用关键字作为标识符。例如:

使用int关键字进行定义,但定义的标识符不能使用关键字float。但将float改为Float,就可以通过编译。
5)标识符的命名最好具有相关的含义。将标识符设定成有一定含义的名称,可以方便程序的编写,并且在以后回顾或他人阅读时,具有含义的标识符能使程序便于阅读和理解。例如,定义一个长方体的长、宽和高,可以简单地定义成如下代码:

或者定义成如下代码:

从上面列举出的标识符可以看出,如果定义的标识符不具有一定的含义,没有后面的注释,那么使人很难理解该标识符的作用;如果定义的标识符具有一定的含义,那么通过直观地查看就可以了解该标识符的作用。
6)ANSI标准规定,标识符可以为任意长度,但外部名必须能由前8个字符唯一地区分,并且不区分大小写。这是因为某些编译程序(如IBM PC的MS C)只能识别前8个字符。
常见错误:
●标识符的大小写书写错误。在书写标识符时要注意英文字母大小写的区分。
●标点符号中英文状态忘记切换。代码中的标点符号应该采用英文半角格式。