解码C语言关键字
数据类型关键字(12个)
基础类型
| 关键字 | 用途 | 示例 |
|---|---|---|
char |
字符类型 | char c = 'A'; |
int |
整型 | int num = 10; |
float |
单精度浮点型 | float f = 3.14f; |
double |
双精度浮点型 | double d = 2.718; |
void |
无类型(函数/指针) | void func(); |
类型修饰符
| 关键字 | 用途 | 示例 |
|---|---|---|
short |
短整型(如16位) | short s = 100; |
long |
长整型(如32/64位) | long l = 100000L; |
signed |
有符号类型(默认) | signed int a = -5; |
unsigned |
无符号类型 | unsigned int u = 42; |
复合类型
| 关键字 | 用途 | 示例 |
|---|---|---|
struct |
定义结构体 | struct Point { int x, y; }; |
union |
定义联合体 | union Data { int i; float f; }; |
enum |
定义枚举类型 | enum Color { RED, GREEN }; |
控制语句关键字(12个)
条件分支
| 关键字 | 用途 | 示例 |
|---|---|---|
if |
条件判断 | if (x > 0) { ... } |
else |
条件分支的否定分支 | else { ... } |
switch |
多路选择结构 | switch (value) { ... } |
case |
switch 中的分支标签 |
case 1: ... ; break; |
default |
switch 的默认分支 |
default: ... ; break; |
循环控制
| 关键字 | 用途 | 示例 |
|---|---|---|
for |
循环结构 | for (int i=0; i<10; i++) |
while |
条件循环 | while (x < 100) { ... } |
do |
后测试循环 | do { ... } while (cond); |
break |
跳出循环或 switch |
break; |
continue |
跳过当前循环迭代 | continue; |
跳转语句
| 关键字 | 用途 | 示例 |
|---|---|---|
goto |
无条件跳转到标签 | goto error_handler; |
return |
函数返回值 | return 0; |
存储类别关键字(4个)
| 关键字 | 用途 | 示例 |
|---|---|---|
auto |
声明自动变量(默认存储类型,通常省略)。 在C语言中,局部变量默认隐含 auto,表示变量存储在栈区,生命周期随代码块结束而销毁。 |
auto int x = 5;(完全等价于 int x = 5;,实际编程中auto可省略) |
extern |
声明外部全局变量或函数(仅声明,不分配内存),用于引用其他文件中定义的全局变量/函数,实现跨文件共享。 | // 在文件A中定义全局变量int global_var = 10;// 在文件B中用 extern声明并使用extern int global_var;printf("%d", global_var); // 输出10 |
register |
建议编译器将变量存储在寄存器中(而非内存),适用于频繁访问的变量(如循环计数器),以提高访问速度。 注意:编译器可忽略此建议;寄存器变量不能取地址( &)。 |
register int i; // 建议将i存放在寄存器for (i = 0; i < 10000; i++) { ... } // 频繁使用i,适合用register |
static |
修饰局部变量: - 作用:延长生命周期至程序结束(仅初始化一次),但作用域仍局限于函数/代码块内。 - 特点:函数调用间保持值不变,避免重复初始化。 修饰全局变量: - 作用:限制作用域为当前文件(仅本文件可见)。 - 特点:避免跨文件命名冲突,实现数据隐藏。 修饰函数: - 作用:限制函数仅能在当前文件内被调用。 - 特点:隐藏实现细节,增强模块化,避免函数名冲突。 |
// 修饰局部变量 void count() { static int num = 0; // 仅初始化一次 num++; // 每次调用值递增(首次1,二次2...) } // 修饰全局变量 static int file_only_var = 20; // 仅当前文件可访问 // 修饰函数 static void inner_func() { // 仅当前文件可调用 printf("内部函数"); } |
类型修饰符(2个)
| 关键字 | 用途 | 示例 |
|---|---|---|
const |
定义常量(不可修改) | const int MAX = 100; |
volatile |
告知编译器变量可能被意外修改(防止变量在运行的过程中被优化而出现程序错误—面试) | volatile int flag = 0; |
其他关键字(2个)
| 关键字 | 用途 | 示例 |
|---|---|---|
sizeof |
计算类型/对象所占字节数 | size_t size = sizeof(int); |
typedef |
为类型定义别名 | typedef int Length; |

浙公网安备 33010602011771号