内存中的东西分三类:代码(code)、数据(data)、栈(stack),
其中stack是负责子程序的调用和返回的,stack实行后进先出的机制,调用子程序时先将当前地址的下一个地址临时保存到stack中,而子程序根据这个地址返回。
在子程序(函数)内部分配的局部变量也是在stack中分配,这样,函数返回时,分配的空间也自动收回。
而heap则是系统从data区中特别挪用并且独立管理的一个数据区,用于程序执行中数据的动态分配。
从表相看:全局静态数据在data中,局部分配的静态数据在stack中,动态分配的数据在heap中
需要帮你做设计吗