同标准的C语言一样,单片机的C51程序语言也包含特定的标识符和关键字。因此,在进行C51程序设计时必须符合其使用的规则。
标识符是用来标识源程序中某个对象名称的符号。其中的对象可以是常量、变量、语句标号、数据类型、自定义函数名及数组名等。C51标识符的定义不是随意的,需要符合以下定义规则。
●C51的标识符可以由字母、数字(0~9)和下画线“_”组成。
●C51的标识符区分大小写,例如“num5”和“NUM5”代表两个不同的标识符。
●C51的标识符第一个字符必须是小写字母(a~z)、大写字母(A~Z)或下画线“_”。例如“count1”、“C_1”等,都是正确的。而“5num”则是错误的标识符,在编译时系统会出现错误提示。另外,有些编译系统专用的标识符是以下画线开头,为了程序的兼容性和可移植性,建议一般不要以下画线开头来命名标识符。
●C51的标识符定义不能使用C51的关键字,也不能和用户已使用的函数名或C51库函数同名。例如“int”是不正确的标识符,“int”是关键字,所以它不能作为标识符。
●C51的标识符最多可支持32个字符,不过,为了使用和理解方便,尽量不要使用过长的标识符。
另外,在命名C51标识符时,应当尽量简单,并且能够清楚地表达含义,这样有助于阅读和理解源程序。
关键字是被C51编译器已定义保留的专用特殊标识符。关键字是C51语言的一部分,如if、for、do、case等。这些关键字有固定的名称和含义,用户在C51源程序中自定义的标识符不允许与关键字相同,否则程序将无法编译运行。单片机C51程序语言采用了ANSI C标准定义的32个关键字,这些关键字如表6-1所示。
表6-1 ANSI C标准的关键字
续表
另外,不同的编译系统会根据C51语言及单片机硬件的特点来扩展相关的关键字。在KeilμVision3编译器中采用的扩展关键字如表6-2所示。
表6-2 C51扩展的关键字