前言
使用说明
1. 函数内部使用
- 在函数内部声明的变量为 static 时,表示该变量具有静态生存期和静态作用域。
- 意味着该变量在程序整个运行期间存在,而不是仅在函数调用时存在,且只能在声明它的源文件中访问。
- 每次函数被调用时,该变量的值不会被重置,而是保持上一次调用结束时的值。
void example_function() {
static int count = 0;
count++;
printf("Count: %d\n", count);
}
2. 在函数声明前使用
- 在函数声明前加上 static 关键字,表示该函数仅在当前源文件中可见,对于其他源文件是不可见的。
- 作用:限制函数的作用域,防止与其他文件中的同名函数发生冲突。
static void local_function();
3. 全局变量前使用
- 在全局变量前加上 static 关键字,表示该变量的作用域限定在当前文件内,其他文件无法访问。
- 可防止在不同文件中定义同名的全局变量发生冲突
static int global_variable = 10;
4. 在函数内部的函数中使用
- 在函数内部定义的函数为 static 时,表示该函数的作用域仅在当前源文件内。这种函数通常被称为“内部函数”或“局部函数”文件中定义同名的全局变量发生冲突
void outer_function() {
static void inner_function() {
}
inner_function();
}
总结
这里对C语言中static关键字的使用情况说明!