在C语言中,static关键字控制变量的存储持续时间和作用域:存储持续时间:使用static可以使变量在程序运行期间始终保持其值。作用域:static变量只能在声明它的函数或文件中访问。

C 语言中的 static
static 关键字
在 C 语言中,static 关键字用于控制变量的存储持续时间和作用域。
存储持续时间
立即学习“C语言免费学习笔记(深入)”;
默认情况下,局部变量在函数结束时被释放。使用 static 关键字可以使变量在程序的整个生命周期内保持其值。
作用域
static 还可以修改变量的作用域。如果在函数中使用 static 声明变量,则该变量只能在该函数内使用。
类型
static 关键字可以用于以下类型的变量:
- 局部变量
- 全局变量
- 局部 static 变量
- 全局 static 变量
用法
局部 static 变量:
void func() {
static int count = 0;
...
}全局 static 变量:
static int global_count = 0; ...
局部变量:
int func() {
int count = 0;
...
return count;
}全局变量:
int global_count = 0; ...
区别
| 特性 | 局部 static 变量 | 全局 static 变量 | 局部变量 | 全局变量 |
|---|---|---|---|---|
| 存储持续时间 | 程序生命周期内 | 程序生命周期内 | 函数生命周期内 | 程序生命周期内 |
| 作用域 | 只在声明它的函数中可见 | 只能在声明它的文件中可见 | 只在声明它的函数中可见 | 在整个程序中可见 |











