​静态变量和动态变量

​静态变量和动态变量

静态变量动态变量    

静态变量

就是在定义的时候,有static修饰的变量,形式为

static TYPE var_name = init_value;

动态变量,形式为

TYPE var_name = init_value;

即没有static 修饰。其中的=init_value均可省略。

区分定义在函数外的全局变量,和函数内的局部变量,作用域,生命周期,及无显式初始化时的初始值,均有区别。

1 动态全局变量:

作用域为整个项目,即最终编译成可执行文件的所有文件中均可以使用动态全局变量。

生命周期为从程序运行到程序退出,即贯穿整个运行时间。

无显式初始化时默认初始化值为0。

2 静态全局变量:

作用域为当前文件,从定义/声明位置到文件结尾。

生命周期为从程序运行到程序退出,即贯穿整个运行时间。

无显式初始化时默认初始化值为0。

3 动态局部变量:

作用域为当前函数,从定义位置,到其所在的{}的结束位置。

生命周期为从函数调用到函数退出。

无显式初始化时默认初始化值为随机值。

4 静态局部变量:

作用域为当前函数,从定义位置,到其所在的{}的结束位置。

生命周期为从程序运行到程序退出,即贯穿整个运行时间,当下次函数调用时,静态局部变量不会被再次初始化,而是沿用上次函数退出时的值。

无显式初始化时默认初始化值为0。

推荐课程:C语言教程

以上就是​静态变量和动态变量的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1433293.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月17日 09:02:49
下一篇 2025年12月10日 09:30:21

相关推荐

  • C#学习日记20—-static静态变量 与 常量

     在上一篇  委托(delegate)类型     中我定义public方法的时候使用了 static 关键字,导致后来无法通过 对象.方法名  的形式访问此方法,这一篇我们就具体学习下 static 静态变量。   变量:       在学习static静态变量之前,我们还是有必要来了解 变量 的…

    2025年12月17日
    000
  • PHP中如何创建静态变量?

    在php中创建静态变量的方法是:在类的方法内使用关键字“static”定义变量。具体步骤如下:1. 在类的方法内使用“static”关键字定义变量,例如“static $count = 0;”。2. 静态变量会在方法调用之间保持状态,每次调用方法时,变量的值会保留并可以被修改。静态变量在内存中的生命…

    2025年12月10日
    000
  • 函数中返回静态变量时有哪些潜在风险?

    在函数中返回静态变量存在以下风险:竞争条件:多线程访问时可能发生。内存泄漏:返回指向外部分配内存的变量时可能发生。隐藏依赖:隐藏函数对外部数据的依赖,降低代码的可维护性和可测试性。 函数中返回静态变量的潜在风险 在函数中返回静态变量是一个常见的做法,但它也存在一些潜在的风险。 什么是静态变量? 静态…

    2025年12月9日
    000
  • PHP 函数中哪些变量类型是静态变量?

    php 中的静态变量是函数范围内的持久变量,在函数调用间保持其值。要声明静态变量,可以在其前加上 static 关键字。这使得静态变量具有数据持久性,在不同位置跟踪数据,同时节省内存资源。此外,php 还支持全局静态变量,它们在程序的整个生命周期中保持其值,并可以在任何作用域内访问。 PHP 中静态…

    2025年12月9日
    000

发表回复

登录后才能评论
关注微信