【编程】C++入门:动态分配和静态分配

动态内存分配

指在程序执行的过程中动态地分配或者回收存储空间的分配内存的方法。
动态内存分配不像数组等静态内存分配方法那样需要预先分配存储空间,而是由系统根据程序的需要即时分配,且分配的大小就是程序要求的大小。

动态内存分配相对于静态内存分配的特点

1、不需要预先分配存储空间
2、分配的空间可以根据程序的需要扩大或缩小

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

1、时间不同。静态分配发生在程序编译和连接的时候。动态分配则发生在程序调入和执行的时候。
2、空间不同。堆都是动态分配的,没有静态分配的堆。栈有2种分配方式:静态分配和动态分配。静态分配是编译器完成的,比如局部变量的分配。动态分配由函数alloca()进行分配。不过栈的动态分配和堆不同,它的动态分配是由编译器进行释放,无需我们手工实现。

猜你喜欢

转载自blog.csdn.net/m0_46613023/article/details/114867098