C语言之static关键字

发布时间:2024年01月15日


前言

  • 对于c语言中static关键字的全面记录:

使用说明

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关键字的使用情况说明!

文章来源:https://blog.csdn.net/weixin_45671864/article/details/135591148
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。