- 博客(3)
- 资源 (3)
- 收藏
- 关注
转载 一条进程的栈区、堆区、数据区和代码区在内存中的映射
栈区:主要用来存放局部变量, 传递参数, 存放函数的返回地址。.esp 始终指向栈顶, 栈中的数据越多, esp的值越小。堆区:用于存放动态分配的对象, 当你使用 malloc和new 等进行分配时,所得到的空间就在堆中。动态分配得到的内存区域附带有分配信息, 所以你能够 free和delete它们。数据区:全局,静态和常量是分配在数据区中的,数据区包括bss(未初始化数据区)和初始化数据
2011-11-12 15:27:11
358
转载 windows进程中的内存结构(堆与栈的区别)
堆栈是一种简单的数据结构,是一种只允许在其一端进行插入或删除的线性表。允许插入或删除操作的一端称为栈顶,另一端称为栈底,对堆栈的插入和删除操作被称为入栈和出栈。有一组CPU指令可以实现对进程的内存实现堆栈访问。其中,POP指令实现出栈操作,PUSH指令实现入栈操作。CPU的ESP寄存器存放当前线程的栈顶指针,EBP寄存器中保存当前线程的栈底指针。CPU的EIP寄存器存放下一个CPU指令存放的内存地
2011-11-12 14:36:39
793
转载 typedef 定义函数指针
typedef 返回类型(*新类型)(参数表)typedef char (*PTRFUN)(int); PTRFUN pFun; char glFun(int a){ return;} void main() { pFun = glFun; (*pFun)(2); } typedef的功能是定义新的类型。第一句就是定义了一种PTRFUN的类型,并定义这种类型为指
2011-11-03 10:52:20
429
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人