【摘要】:静态存储方式是指在程序执行期间分配固定的存储空间的方式,动态存储方式变量是指在程序执行期间根据需要进行动态的分配存储空间的方式。内存中供用户使用的存储空间可分为程序区、动态存储区和静态存储区,如图7-5所示。程序区用来存放程序代码、动态存储区和静态存储区用来存放数据,即数据与处理数据的程序是分离的,这是面向过程的程序设计的特点。
前面讨论了变量的作用域,它是指变量可以被使用的有效范围(即值可否使用),从空间的角度把变量分为全局变量和局部变量。下面再来讨论变量的生存期,它是指在程序执行期间变量的值的存在期限(即值是否存在),从时间的角度把变量分为静态存储变量和动态存储变量。
静态存储方式是指在程序执行期间分配固定的存储空间的方式,动态存储方式变量是指在程序执行期间根据需要进行动态的分配存储空间的方式。内存中供用户使用的存储空间可分为程序区、动态存储区和静态存储区,如图7-5所示。程序区用来存放程序代码、动态存储区和静态存储区用来存放数据,即数据与处理数据的程序是分离的,这是面向过程的程序设计的特点。
图7-5
函数的形式参数、未加static说明的局部变量以及函数调用时需要保存的数据都在动态存储区存放,这些数据在函数调用开始时分配动态存储空间,函数调用结束后释放存储空间。其他数据在静态数据区存放,程序在编译时在静态数据区给静态存储变量分配存储空间,程序整个执行期间都不释放,程序结束后释放存储空间。
C语言的数据有两种属性:数据类型和存储类型。因此完整的变量说明的一般形式为:
存储型标识符 类型标识符 变量名;
其中类型标识符说明变量的数据类型,在前面章节已经讲述了数据类型,如整型、实型等。
本小节讲述数据的存储类型,C语言的数据有四种存储类型,分别由四个关键字(称为存储类型标识符)表示:auto(自动)、extern(全局)、static(静态)和register(寄存器)。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。