【C语言】static关键字的三种用法

【C语言】static关键字的三种用法

C语言中的static关键字是一个存储类说明符,它可以用来修饰变量和函数。static关键字的主要作用是控制变量或函数的生命周期和可见性。以下是static关键字的一些主要用法和含义:

  1. 局部静态变量

    • static修饰局部变量时,它将变量的生命周期从函数调用的开始延伸到程序的结束。这意味着静态局部变量在函数调用结束后不会消失,而是保持其值,直到程序结束。
    • 静态局部变量只在声明它的文件内部可见,即它们具有文件作用域。

    示例:

    c 复制代码
    void func() {
        static int var = 10; // 静态局部变量
        ++var;
        printf("%d\n", var);
    }

    每次调用func()时,var的值都会增加,因为它在函数调用之间保持其值。

  2. 全局静态变量

    • static修饰全局变量时,它将变量的可见性限制在声明它的文件内部,即它具有内部链接。这意味着其他文件无法访问这个变量,即使它在其他文件中被声明为extern

    示例:

    c 复制代码
    static int global_var = 20; // 只在当前文件可见
  3. 静态函数

    • static修饰函数时,它将函数的可见性限制在声明它的文件内部。这意味着该函数不能被其他文件调用,它具有内部链接。

    示例:

    c 复制代码
    static void my_function() {
        // 函数体
    }

    my_function()只能在声明它的文件中被调用。

相关推荐
二川bro1 分钟前
TypeScript接口 interface 高级用法完全解析
javascript·typescript
Captaincc24 分钟前
这款堪称编程界的“自动驾驶”利器,集开发、调试、提 PR、联调、部署于一体
前端·ai 编程
我是小七呦34 分钟前
万字血书!TypeScript 完全指南
前端·typescript
simple丶37 分钟前
Webpack 基础配置与懒加载
前端·架构
simple丶42 分钟前
领域模型 模板引擎 dashboard应用列表及配置接口实现
前端·架构
冰夏之夜影43 分钟前
【css酷炫效果】纯css实现液体按钮效果
前端·css·tensorflow
43 分钟前
告别手写Codable!Swift宏库ZCMacro让序列化更轻松
前端
摘笑1 小时前
vite 机制
前端
Channing Lewis2 小时前
API 返回的PDF是一串字符,如何转换为PDF文档
前端·python·pdf
海盗强2 小时前
css3有哪些新属性
前端·css·css3