局部变量、全局变量和静态变量的关系。
来源:互联网 发布:淘宝买东西的流程 编辑:程序博客网 时间:2024/05/29 16:54
这里简单的说下局部变量和全局变量和静态变量的关系。
首先,全局变量存储在静态存储区;
局部变量存储在动态存储区,是存储在栈里的;
静态变量 类型说明符是static。
静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在静态存储区内分配存储单元),该区域中的数据在整个程序的运行期间一直占用这些存储空间(在程序整个运行期间都不释放),也可以认为是其内存地址不变,直到整个程序运行结束(相反,而auto自动变量,即动态局部变量,属于动态存储类别,占动态存储空间,函数调用结束后即释放)。静态变量虽在程序的整个执行过程中始终存在,但是在它作用域之外不能使用。
另外,属于静态存储方式的量不一定就是静态变量。 例如:外部变量虽属于静态存储方式,但不一定是静态变量,必须由 static加以定义后才能成为静态外部变量,或称静态全局变量。
所有的全局变量都是静态变量,而局部变量只有定义时加上类型修饰符static,才为局部静态变量。
静态变量可以在任何可以申请的地方申请,一旦申请成功后,它将不再接受其他的同样申请。
静态变量并不是说其就不能改变值,不能改变值的量叫常量。 其拥有的值是可变的 ,而且它会保持最新的值。说其静态,是因为它不会随着函数的调用和退出而发生变化。即上次调用函数的时候,如果我们给静态变量赋予某个值的话,下次函数调用时,这个值保持不变。
此外,
new,malloc分配的内存存储在堆里
0 0
- 局部变量、全局变量和静态变量的关系。
- 全局变量、局部变量、静态变量和实例变量的区别
- 全局变量、局部变量、静态变量和实例变量的区别
- 全局变量,局部变量,静态变量和实例变量的区别
- 静态局部变量和全局变量的区别!
- [zt] 全局变量、静态全局变量、静态局部变量和局部变量,寄存器变量的区别
- 全局变量和局部静态变量
- 全局变量、静态全局变量、静态局部变量和局部变量
- 全局变量、静态全局变量、静态局部变量和局部变量
- 全局变量、静态全局变量、静态局部变量和局部变量
- 全局变量、静态全局变量、局部变量和静态局部变量
- C++ 全局变量、静态全局变量和静态局部变量的异同
- 全局变量、静态全局变量和静态局部变量的链接性
- 全局变量、局部变量、静态全局变量、静态局部变量的区别
- 全局变量 局部变量 静态全局变量 静态局部变量的区别
- 全局变量、局部变量、静态全局变量、静态局部变量的区别
- 全局变量、局部变量、静态全局变量、静态局部变量的区别
- 局部变量、全局变量、静态局部变量、静态全局变量的异同
- c++primer plus 编程练习题2
- iOS 打包ipa的方法
- ASI同步(AFN做不到的东西)
- 【微信链接3种方式】
- Java集合总体框架
- 局部变量、全局变量和静态变量的关系。
- 【SSH】——Struts2中的动态方法调用(一)
- Android画图之setXfermode处理两图相交叉的情况
- C语言二维数组剖析【元素及元素地址的指针操作】
- 查找searching
- 解决各大浏览器下载文件乱码以及Firefox下载文件名不全问题
- 欢迎使用CSDN-markdown编辑器
- 「图论」最短路径长度-Dijkstra
- 利用devstack,在openstack-ceilometer 环境下配置监控项