1.typedef- 类型定义
typedef int size_t; // 为int创建别名size_t typedef struct {int x; int y;} Point; // 为匿名结构体定义别名 typedef char* String; // 为char*定义别名作用:创建类型别名,提高代码可读性和可维护性
2.const- 常量定义
const int MAX_SIZE = 100; // 定义常量 const char* str = "hello"; // 指向常量的指针 char* const ptr = buffer; // 常量指针 const char* const cp = "const"; // 指向常量的常量指针作用:定义不可修改的值,提高程序安全性和可读性
3.static- 静态存储类别
static int counter = 0; // 静态局部/全局变量 static void helper() { } // 静态函数(文件作用域)函数内:保持变量值在函数调用间不变
文件作用域:限制变量/函数仅在当前文件可见
类成员(C++):类级别的共享变量
4.extern- 外部声明
extern int global_var; // 声明外部定义的变量 extern void external_func(); // 声明外部定义的函数作用:声明在其他文件中定义的变量或函数,实现跨文件访问
5.volatile- 易变变量
volatile int* hardware_reg; // 硬件寄存器 volatile sig_atomic_t flag; // 信号处理中使用的变量作用:告诉编译器变量可能被意外修改,避免编译器优化
6.register- 寄存器变量
register int i; // 建议编译器将变量放入寄存器作用:建议编译器将变量存储在寄存器中
7.auto- 自动变量
auto int local_var = 10; // 自动存储期作用:定义自动存储期的局部变量
8. signed/unsigned- 有符号/无符号修饰
signed int si = -10; // 有符号整型(默认) unsigned int ui = 10; // 无符号整型 unsigned char byte = 255; // 无符号字符