
ANSI C标准下的C语言共有32个关键字,包括:auto、break、case、char、const、continue、default、do、double、else、enum、extern、float、for、goto、if、int、long、register、return、short、signed、sizeof、static、struct、switch、typedef、union、unsigned、void、volatile、while。这些关键字在编程中具有特定的功能,如auto用于声明自动变量,break用于跳出循环或开关语句,case用于开关语句中的分支,char用于声明字符型变量或函数返回值,const用于声明只读变量等。
1999年12月16日,ISO推出了C99标准,新增了5个关键字:inline、restrict、_Bool、_Complex、_Imaginary。inline用于定义内联函数,restrict用于指定指针,_Bool表示布尔类型,_Complex表示复数类型,_Imaginary表示虚部。
2011年12月8日,ISO发布C语言的新标准C11,新增了7个关键字:_Alignas、_Alignof、_Atomic、_Static_assert、_Noreturn、_Thread_local、_Generic。_Alignas用于指定对齐方式,_Alignof用于获取对齐信息,_Atomic用于声明原子变量,_Static_assert用于静态断言,_Noreturn用于声明不会返回的函数,_Thread_local用于声明线程局部变量,_Generic用于声明泛型函数。
下面是对这些关键字的解释:
auto:声明自动变量,变量的生命周期与当前作用域相同。
break:跳出当前循环或开关语句。
case:用于开关语句中的分支,表示某个特定条件下的操作。
char:声明字符型变量或函数返回值类型。
const:声明只读变量,防止变量被修改。
continue:结束当前循环,开始下一轮循环。
default:开关语句中的“其它”分支,当所有case都不匹配时执行。
do:循环语句的循环体,用于执行一系列语句。
double:声明双精度浮点型变量或函数返回值类型。
else:条件语句否定分支,与if连用。
enum:声明枚举类型,定义一组命名的整数常量。
extern:声明变量或函数是在其它文件或本文件的其他位置定义。
float:声明浮点型变量或函数返回值类型。
for:一种循环语句,用于重复执行一段代码。
goto:无条件跳转语句,使程序控制流跳转到指定的标签。
if:条件语句,根据条件判断执行相应的代码块。
int:声明整型变量或函数返回值类型。
long:声明长整型变量或函数返回值类型。
register:声明寄存器变量,用于提高变量访问速度。
return:子程序返回语句,可以带参数,也可不带参数。
short:声明短整型变量或函数返回值类型。
signed:声明有符号类型变量或函数返回值类型。
sizeof:计算数据类型或变量长度,即所占字节数。
static:声明静态变量,变量的生命周期与程序运行相同。
struct:声明结构体类型,用于组合多个变量为一个整体。
switch:用于开关语句,根据不同的条件执行相应的代码块。
typedef:用以给数据类型取别名,方便代码编写。
union:声明共用体类型,允许多个变量共享同一内存空间。
unsigned:声明无符号类型变量或函数返回值类型。
void:声明函数无返回值或无参数,声明无类型指针。
volatile:说明变量在程序执行中可被隐含地改变。
while:循环语句的循环条件,用于重复执行一段代码直到条件不再满足。