C语言编译后的内存分布。 C语言经过编译后将内存分为以下几个区域:栈、堆、全局(静态)存储区、文字常量区和程序代码区。 栈:由编译器进行管理,自动分配和释放,用于存放函数调用过程中的各种参数、局部变量、返回值以及函数的返回地址。(操作方式类似于数据结构中的栈。) //例: void fun(int num)//函数参数num { int n = num;//局部变量n return n; // 返回值n } 堆:用于程序动态申请分配和释放空间。(C中的malloc()和free(),C++中的new和delete均是在堆中进行的。)一般情况下,程序员在编写程序时应该将申请的空...