定义:被C语言赋予了特殊含义,用做专门用途的字符串(或单词)。
特点:全部关键字都是小写字母
。
举例:?int
、return
等已经被C语言定义好了。
传统的C语言(ANSI C)有32个关键字。如下:
类型 | 具体关键字 |
---|---|
控制语句关键字(12 个) | break, case, continue, default, do, else, for, goto, if, return, switch, while |
数据类型关键字(12 个) | char, enum, double, long, float, int, short, signed, struct, unsigned, union, void |
存储类型关键字(4 个) | auto, extern, register, static |
其他关键字(4 个) | const, sizeof, typedef, volatile |
后续,1999年,C99标准增加了5个关键字:inline
、restrict
、_Bool
、_Complex
和_Imaginary
。
2011年,C11标准又增加了7个关键字:_Alignas
、_Alignof
、_Atomic
、_Static_assert
、_Noreturn
、_Thread_local
和_Generic
。
定义:变量、函数、数组名、结构体等要素命名时使用的字符序列
特点:我们起的名字都叫标识符
硬性规定
)只能由26个英文字母大小写,0-9 或 _ 组成(简记为字母数字下划线)
数字不可以开头
不可以是关键字,但可以包含关键字
C99和C11允许使用更长的标识符名,但是编译器只识别前63个字符。(会忽略超出的字符)
不允许有空格。
严格区分大小写字母。
软性要求
)有意义。如:sum,name,max,year,total 等。
不要出现仅靠大小写区分不同的标识符。如:name、Name 容易混淆
避免名字中出现数字编号,如value1、value2等,除非逻辑上需要编号。
宏定义、枚举常数、常量(只读变量)全用大写字母命名,用下划线分隔单词。
比如: const double TAX_RATE = 0.08; //TAX_RATE 只读变量
系统内部使用了一些下划线开头的标识符(比如两个下划线开头的变量名、一个下划线 + 大写英文字母开头的变量名)。比如,C99 标准添加的类型 _Bool
。为防止冲突,建议用户尽量避免使用下划线开头的标识符。
下划线通常用于连接一个比较长的变量名。如:max_classes_per_student。(C语言倾向下划线命名法)
变量名、函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz (驼峰法,小驼峰)。比如:short stuAge = 20
。