C语言基础--静态存储和动态存储
2016-06-30 13:54
387 查看
一、存储方式
变量从变量值存在的时间(即生存期)角度分:静态存储方式和动态存储方式。静态:由系统分配固定的存储空间,全局变量就存储在静态存储区。动态:系统根据需要进行动态的分配存储空间。在动态存储区存放一下数据:(1)、函数形式参数;
(2)、自动变量(未加static声明);(3)、函数调用时的现场保护和返回地址;
二、内存中的存储区
程序代码区:存放函数体的二进制代码
静态区/全局区(static):全局变量和静态变量的存储区域
堆区(heap):程序员分配释放
栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量的值
变量从变量值存在的时间(即生存期)角度分:静态存储方式和动态存储方式。静态:由系统分配固定的存储空间,全局变量就存储在静态存储区。动态:系统根据需要进行动态的分配存储空间。在动态存储区存放一下数据:(1)、函数形式参数;
(2)、自动变量(未加static声明);(3)、函数调用时的现场保护和返回地址;
二、内存中的存储区
程序代码区:存放函数体的二进制代码
静态区/全局区(static):全局变量和静态变量的存储区域
堆区(heap):程序员分配释放
栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量的值
相关文章推荐
- 重构理论及实践——用工厂模式重构c++后台代码
- C++中的virtual析构函数
- 几种C++ std::string和std::wstring相互转换的转换方法
- C++中string::npos的一些用法总结
- 【干货】国外程序员整理的 C++ 资源大全(转)
- Simple DB process method in program
- C/C++中的struct
- C++类空间大小关于内存对齐的学习
- C语言基础知识
- C语言条件编译及编译预处理阶段
- VC++、Win32 SDK、MFC
- C++中的类的学习总结
- 我的虚函数个人总结
- __declspec(dllimport)的理解
- C++ 编译器生成默认构造函数的四种情况
- C/C++中容易造成内存溢出的函数
- 关于C++中的类型转换
- c++ 回调类成员函数实现
- 优先队列(堆)
- *leetcode #162 in cpp