,,static全局变量与普通的全局变量的区别详细解析

,,static全局变量与普通的全局变量的区别详细解析

下面详细分析和介绍静态全局变量和普通全局变量的区别。有需要的朋友可以过来参考一下,希望能帮到你。

(1)1)静态全局变量和普通全局变量有什么区别?(2)2)静态局部变量和普通局部变量有什么区别?(3)3)静态函数和常用函数作用域有什么区别?(4)4)静态函数和普通函数有什么区别?

(1)1)静态全局变量和普通全局变量有什么区别?答:全局变量的描述以static开头,形成静态全局变量。全局变量本身就是静态存储方法,静态全局变量也是静态存储方法。两者在存储方式上没有区别。虽然两者的区别在于非静态全局变量的作用范围是整个源程序,但是当一个源程序由多个源文件组成时,非静态全局变量在每个源文件中都是有效的。但静态全局变量限制了它的作用域,即它只在定义该变量的源文件中有效,不能在同一源程序的其他源文件中使用。因为静态全局变量的范围被限制在一个源文件中,它们只能被那个源文件中的函数共享,所以它可以避免在其他源文件中引起错误。从上面的分析可以看出,把局部变量改成静态变量,改变了它的存储方式,也就是它的生存期。把全局变量改成静态变量,改变了它的作用域,限制了它的使用范围。

(2)2)静态局部变量和普通局部变量有什么区别?答:静态局部变量只初始化一次,下一次以最后一次结果值为准;

(3)3)静态函数和普通函数作用域有什么区别?答:仅在本文件中。只在当前源文件中使用的函数应该描述为静态函数,应该在当前源文件中描述和定义静态函数。对于可以在当前源文件之外使用的函数,应该在一个头文件中声明,并且使用这些函数的源文件应该包含这个头文件。

(4)4)静态函数和普通函数有什么区别?内存中只有一个答:静态函数的副本。在每次调用中保留程序副本的普通函数的局部变量存在于(栈),全局变量存在于(静态区),动态应用数据存在于(堆)。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • word文档无法编辑是怎么回事-
  • 华为手机怎么设置返回键(华为手机下面的三个按键设置方法)
  • lumia950怎么样(Lumia950体验分享)
  • otg连接是什么意思(OTG连接手机方法)
  • 笔记本触摸板怎么右键(笔记本电脑触控板手势操作设置)
  • 真我x7怎么样(realme X7 系列体验)
  • 苹果的A16处理器有多强(苹果的A16处理器的介绍)
  • 小米互传怎么用(小米手机的连接与共享教程)
  • 怎么设置电脑桌面图标自动对齐 设置电脑桌面自动整理图标的方法
  • 宽带错误651最简单解决方法(处理宽带错误651的措施)
  • 大学生手机有什么推荐(大学生换手机攻略)
  • 天玑1100和骁龙778g哪个好(骁龙778G、天玑900、天玑1100购选建议)
  • yum update 升级报错的解决办法
  • Windows10禁用屏保教程
  • 连接wifi显示无互联网连接怎么办(无线连上了却不能上网处理绝招)
  • 留言与评论(共有 条评论)
       
    验证码: