生存期 = 變量存在的時間;作用域 = 變量可見的空間。兩者不同維度,需顯式聲明存儲類別。
| 關鍵字 | 類型 | 存儲方式 |
|---|---|---|
| auto | 自動變量 | 動態 |
| register | 寄存器變量 | 動態 |
| extern | 外部變量 | 靜態 |
| static | 靜態變量 | 靜態 |
完整聲明:存儲類別 數據類型 變量名,如 static int a[5]={1,2,3,4,5};
auto,可省略int a,b; char c;,引用文件 extern int a,b; extern char c;(不重複分配內存)static → 靜態局部變量:生存期變全程,作用域不變static → 靜態全局變量:作用域限定文件內