堆与栈的差异
堆与栈的区别
栈(stack):由编译器自动分配,存放函数的参数值,局部变量值。系统自动分配,速度快。char *c = 'a';
堆(heap):由程序员分配和释放,或结束时由操作系统回收。由new分配内存,速度慢,易产生碎片,但方便。 char *c = new char;
全局区(static):存储全局变量和静态变量。
栈(stack):由编译器自动分配,存放函数的参数值,局部变量值。系统自动分配,速度快。char *c = 'a';
堆(heap):由程序员分配和释放,或结束时由操作系统回收。由new分配内存,速度慢,易产生碎片,但方便。 char *c = new char;
全局区(static):存储全局变量和静态变量。