zoukankan      html  css  js  c++  java
  • 《C语言笔记:变量的生命周期》

    一,栈变量的生命周期
    1,局部变量存储在栈上,生命周期是临时的。从定义变量处诞生到变量最近的 ‘}’处消亡。
    2,比如一个函数内定义的局部变量,在这个函数的每一次调用时都会被创建一次,然后使用,最后在函数返回时消亡。
     
    二,堆变量的生命周期
    1,堆空间是客观存在的,是由操作系统维护的。程序只是申请然后使用后释放。
    2,从malloc申请时诞生,然后使用,最后到free后消亡。malloc之前和free之后都不能再去访问。
     
    三,数据段、.bss段的生命周期
    1,全局变量的生命周期时永久的。在程序被执行时诞生,在程序终止时消亡。
    2,申请过多的全局变量会导致这个程序一直占用大量的内存。
     
    四,代码段、只读段的生命周期
    1,其实就是程序执行的代码,其实就是函数,它的生命周期时永久的。不过一般代码的生命周期并不关注。
    2,有时候放在代码段的不只是代码,还有const类型的常量,字符串常量。(const的变量、字符串常量有时候反正代码段,有时候放在只读数据段取决于平台)
     

  • 相关阅读:
    uva 10370
    uva 10107
    uva 10038
    uva 488
    伪代码格式
    公众号的秘密,知道一个biz就够了
    ToolTip 概述
    swt
    Java GUI图形界面开发工具
    Java多线程-两个小球
  • 原文地址:https://www.cnblogs.com/xuxianshen/p/13977244.html
Copyright © 2011-2022 走看看