1.标识符
标识符是用来识别程序中的变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列,除了库函数的函数名由系统定义为其他都由用户自己定义。C语言规定标识符只能由字母(大小写均可)、数字、下划线组成,且第一个字符必须为字母或下划线。
合法的标识符如:
man,sum,month,Teacher,PI,_zhang_qing.
不合法的标识符如:
Mr.Chen(小数点错误),No.1$z38(".,$"错误),5F38(第一个字符只能为字母或下划线)。
2.关键字
关键字是由C语言规定的具有特殊意义的字符串被设计用来描述程序不同的组件,如变量、函数、控制结构等。不能作为他用,通常也称为保留字。应注意的是,用户定义的标识符不应与关键字相同(会导致编译错误)。C99标准则规定了37个关键字,所有的关键字都必须小写。如下:
流程控制 | break,case,continue,default,do,else,for,goto,if,return,switch,while |
存储属性 | auto,extern,static,register |
数据类型 | _bool,_complex,_imaginary,char,const,double,enum,float,int,long,restrict, short,signed,struct,union,unsigned,void,volatile |
其他 | inline,sizeof,typedef |
可以简单理解为:关键字是预先定义好的单词,而标识符是用来区分不同数据结构的自定义字符串。