解码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) { ... }
caseswitch 中的分支标签case 1: ... ; break;
defaultswitch 的默认分支default: ... ; break;

循环控制

关键字用途示例
for循环结构for (int i=0; i<10; i++)
while条件循环while (x < 100) { ... }
do后测试循环do { ... } while (cond);
break跳出循环或 switchbreak;
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;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值