内存的静态分配和动态分配的区别

 内存的静态分配和动态分配的区别主要是两个:

      一是时间不同。静态分配发生在程序编译和连接的时候。动态分配则发生在程序调入和执行的时候。

      二是空间不同。堆都是动态分配的,没有静态分配的堆。栈有2种分配方式:静态分配和动态分配。静态分配是编译器完成的,比如局部变量的分配。动态分配由函数malloc进行分配。不过栈的动态分配和堆不同,他的动态分配是由编译器进行释放,无需我们手工实现。 

posted @ 2017-11-10 17:40  邱明成  阅读(3883)  评论(0编辑  收藏  举报