C语言中的内存管理 代码区 存放代码指令、常量,函数包括main函数,代码区在程序运行时不变 存放全局const变量 静态区 存放全局变量和静态变量(所有static变量) 栈 先进后出,存自动变量和函数形参(C中入栈顺序从右到左) 堆 没有先进后出,帮助解决栈溢出 char *p = (char *)malloc(1024 * 1024 * 1024);//在堆中申请了内存 明确知道数据大小,数据量较小时用栈,大时用堆; 不知道数据量大小用堆; 需要动态创建数组用堆。