共2条
1/1 1 跳转至页
heap,stack heap和stack的区别请教
问
请问heap和stack的区别,为什么在ADS1.2中heap,stack教要设定,
它们难道不是起一样的作用的 答 1: 简单地说!Heap存储全局静态变量, Stack存储局部变量! 另外Stack可以用来动态地分配内存块.这个在C++中用得比较多.C中不建议用库函数中带的动态分配函数来分配内存块,很容易产生内存泄漏! 答 2: andrewpei兄的讲解太好 andrewpei兄有水平,讲解的太好,困扰我很长时间的问题终于明白了。 答 3: "内存泄漏" 在这个里也存在?MMD 太可怕了。
唉,在PC上就和内存泄漏做斗争! 这里还要??? 答 4: 什么是内存泄漏?菜鸟问。 答 5: "Heap存储全局静态变量, Stack存储局部变量!"有待商榷不太想打字了,贴一篇大学生的学习笔记,非常详细:
http://www.cs.jcu.edu.au/Subjects/cp2003/1997/foils/heapAndStack/heapAndStack.html
"Heap存储全局静态变量, Stack存储局部变量!"有待商榷.
简单说来,线性内存空间分配为:
全局和静态变量
Heap区
stack区
Heap区有专用的数据结构在管理,当调用C库函数时,比如malloc,操作的就是heap空间;
stack区常被编译器用来维护运行时环境,比如保护临时变量,分配局部变量空间等等,所以有"基于栈的运行时环境".
当用c语言时, Heap和Stack的维护都由编译器和C库代码完成,对用户不可见.
哈哈,乱说了一通,真正要弄清楚的还是建议去看看编译原理_运行时环境一节和上面那个大学生的学习笔记 答 6: 能不能简单一点说一下,楼上的。
它们难道不是起一样的作用的 答 1: 简单地说!Heap存储全局静态变量, Stack存储局部变量! 另外Stack可以用来动态地分配内存块.这个在C++中用得比较多.C中不建议用库函数中带的动态分配函数来分配内存块,很容易产生内存泄漏! 答 2: andrewpei兄的讲解太好 andrewpei兄有水平,讲解的太好,困扰我很长时间的问题终于明白了。 答 3: "内存泄漏" 在这个里也存在?MMD 太可怕了。
唉,在PC上就和内存泄漏做斗争! 这里还要??? 答 4: 什么是内存泄漏?菜鸟问。 答 5: "Heap存储全局静态变量, Stack存储局部变量!"有待商榷不太想打字了,贴一篇大学生的学习笔记,非常详细:
http://www.cs.jcu.edu.au/Subjects/cp2003/1997/foils/heapAndStack/heapAndStack.html
"Heap存储全局静态变量, Stack存储局部变量!"有待商榷.
简单说来,线性内存空间分配为:
全局和静态变量
Heap区
stack区
Heap区有专用的数据结构在管理,当调用C库函数时,比如malloc,操作的就是heap空间;
stack区常被编译器用来维护运行时环境,比如保护临时变量,分配局部变量空间等等,所以有"基于栈的运行时环境".
当用c语言时, Heap和Stack的维护都由编译器和C库代码完成,对用户不可见.
哈哈,乱说了一通,真正要弄清楚的还是建议去看看编译原理_运行时环境一节和上面那个大学生的学习笔记 答 6: 能不能简单一点说一下,楼上的。
共2条
1/1 1 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 基于MCP23S17的输入输出功能模块控制被打赏¥20元 | |
| 【S32K3XX】SPD 软件包使用Link文件修改被打赏¥22元 | |
| Switch-Case局部变量定义问题被打赏¥23元 | |
| 基于米尔TIAM62L开发板的串口通信及应用被打赏¥20元 | |
| PCF8574功能模块及其使用被打赏¥20元 | |
| 传感器LSM6DSO及LIS3MDL的功能检测被打赏¥18元 | |
| LPS25HB气压传感器及其检测被打赏¥18元 | |
| HTS221温湿度传感器及其检测被打赏¥18元 | |
| 【S32K3XX】HSE FW 版本更新被打赏¥21元 | |
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |
我要赚赏金
