区分静态变量、动态变量、内部变量(局部变量)、外部变量(全局变量)

  • 静态变量、动态变量、内部变量(局部变量)、外部变量(全局变量)
    • 变量的分类来看

静态变量、动态变量、内部变量(局部变量)、外部变量(全局变量)

文章参考:https://blog.csdn.net/21aspnet/article/details/2560072
文章参考:https://blog.csdn.net/u013921430/article/details/79279114

变量的分类来看

变量分类

  1. 作用域分类
    局部变量(默认是自动局部变量)
    1. 定义:在一个函数内部定义的变量(包括函数形参)
    2. 有效范围:一直在本函数有效
    3. 变量存储:栈内存,函数结束之后自动销毁
    4. 静态局部变量:存储在静态存储区,作用域依旧在函数体内部。每次对其修改都会被保存下来。
    ** 全局变量 **
    1. 定义:在函数外部定义的变量,可为本源文件中其他函数使用
    2. 有效范围:从定义变量的位置开始到本源文件的结束
    3. 变量存储:存储在静态存储区域(静态内存)
    4. 可被工程项目其他文件的 extern 声明之后调用,对其每次修改都会进行保存
    5. 静态全局变量:不能被其他源文件使用,只能本源文件使用,并且每次修改会被保存
  2. 生存周期分类
    静态存储方式——程序运行期间分配固定的存储空间的方式
    动态存储方式——程序运行期间根据需要进行的动态分配空间的方式
    又可分为
    1. auto(自动)——默认,数据存储在动态存储
    2. static(静态)——函数在调用结束之后会保存本次调用的数值
    3. register(寄存器)——在声明动态局部变量或者函数形参时,可将变量声明为register,这样编译系统就会为变量分配一个寄存器而不是内存空间,通过这种方式可提升对某些局部变量频繁调用的程序的性能。(寄存器运算速度远高于内存)
    4. extern (外部)——扩展全局变量的作用域

静态变量、动态变量、内部变量(局部变量)、外部变量(全局变量)相关推荐

  1. extern变量c语言,C语言外部变量extern

    C语言的存储类型可分为:extern.auto.static.register. 外部变量定义在函数之外,通过同一个名字对外部变量的所有引用(即使这种引用来自于单独编译的不同函数),实际上都是引用同一 ...

  2. 解决ajax方法内部不能给外部变量赋值的问题

    为什么80%的码农都做不了架构师?>>>    var parameter=''; $.ajax({ type: "POST", url: "regis ...

  3. @value 静态变量_C/C++语言中的变量的4种存储类型

    所有的数据都有两种类型 (1)数据类型: : 如 int,float 等. (2)存储类型: : 总共有四种存储类型的变量,分别为自动变量(auto).静态变量(static).外部变量(extern ...

  4. iOS中 static变量与全局、局部变量的区别 !

    static变量与全局.局部变量的区别 全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量.全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式. 这两者在存储方式上并 ...

  5. @value 静态变量_C语言基本知识:变量

    变量其实只不过是程序可操作的存储区的名称.C 中每个变量都有特定的类型,类型决定了变量存储的大小和布局,该范围内的值都可以存储在内存中,运算符可应用于变量上. 变量的名称可以由字母.数字和下划线字符组 ...

  6. C语言中将外部变量的作用域扩展到其他文件

    C语言中将外部变量的作用域扩展到其他文件 1.外部变量的定义 外部变量是在函数的外部定义的全局变量.全局变量都是存放在静态存储区中,因而它的生存期是固定的,存在于程序的整个运行过程. 2.外部变量的作 ...

  7. 局部变量,全局变量(外部变量),静态局部变量,静态全局变量

    今天被问到了一个问题:如何让请求的类延迟释放 如果要延迟释放或者在程序整个生命周期都存在可以考虑两种方式,一是定义一个静态变量,二是用单例.用单例本质上用的是静态变量. 单例的写法如下: + (ins ...

  8. 关于静态局部变量与静态外部变量

    静态局部变量特点:static int a 1:静态局部变量存储在静态存储区,如果赋有初值,函数调用期间只赋值一次,下次调用该函数时,静态局部变量值为上次调用之后的结果,原因:静态局部变量在函数调用期 ...

  9. python3 全局变量 局部变量_Python3获取变量名并修改函数内部的外部变量和局部变量,python3,在,local...

    目录 1. 获取变量名 from u_工具 import to_变量名 a = 1 print(to_变量名(a)) 2. 修改local变量 2.0. 预期效果 将变量a的值改成5 def main ...

最新文章

  1. java动态代理【一】
  2. 用Leangoo敏捷开发工具如何管理用户故事?
  3. python实训项目-黑马程序员上海校区Python21期Django项目实训
  4. 最新 | Python 官方中文文档正式发布!
  5. 走近分形与混沌(part10)--用简单的规律来描述复杂的大自然
  6. python学习环境+开发环境的选择和配置
  7. C语言模拟实现标准库函数之strstr()
  8. C++笔记-using的进一步用法
  9. git ignore 怎么添加和删除_Git删除已追踪文件,上传大文件到Github
  10. Excel操作-ApachePOI与EasyExcel
  11. RxJAVA notes
  12. IOS开发笔记_5.线程,HTTP请求,定时器
  13. 【foobar 2000】如何在手机、电脑上播放局域网内另一台电脑上存储的音乐?FTP服务器、UPnP/DLNA协议、构建Music server、创建音乐服务器
  14. 为什么程序员从来不炫富?
  15. windows平台Emacs单实例原理、设置及右键菜单的添加
  16. 从ghost映像.gho文件快速创建vmware虚拟机
  17. 【编程题】【Scratch一级】2019.12 小狗长大记
  18. EleutherAI GPT-Neo: 穷人的希望
  19. 响铃:“头号玩家”乐车邦,恰恰踩到了“无人”的点上
  20. 微信PC端不显示头像和表情怎么解决

热门文章

  1. chkconfig设置开机自启
  2. 对Java的数据类型和运算符的理解
  3. 老薛主机磁盘空间满了怎么办
  4. MaxCompute 项目空间内的访问控制和权限管理
  5. oracle中的execute immediate
  6. 抽象类+接口+内部类(有点晕 写的自己都感觉不太对)
  7. CentOS 7 iptables 防火墙 SNAT DNAT 用法
  8. asp和mysql分页代码
  9. gyp linux,GYP 简介
  10. 设置文字渐变颜色在IOS系统上不显示问题