一个进程的内存区域分为静态存储区,代码区,动态数据区和一块存放常量的区域


1,静态存储区是从小到大的地址增长的,一般全局变量和静态变量就放在这里,初始化的全局变量和静态变量在一块区,未初始化的在另外一块区


2,动态存储区分为堆和栈两种,

栈是由编译器自动分配释放的,在栈上存取数据比通过指针在堆上存取数据快些,栈是先入后出的,一般是由高地址向低地址生长

堆一般有程序员控制,程序结束时由os回收

堆和栈的分配如下图

posted on 2012-03-24 20:49  xnfriday  阅读(285)  评论(0编辑  收藏  举报