C语言中定义的静态变量存放在栈区,动态分配的内存空间位于堆区。

Posted kk-.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中定义的静态变量存放在栈区,动态分配的内存空间位于堆区。相关的知识,希望对你有一定的参考价值。

C语言中定义的静态变量存放在栈区,动态分配的内存空间位于堆区。

这题答案为 F 

为大家科普一下知识 

C语言中局部变量存在栈里,全局变量存静态存储区。

局部变量在栈空间上分配,这个局部变量所在的函数被多次调用时,每次调用这个局部变量在栈上的位置都不一定相同。局部变量也可以在堆上动态分配,但是记得使用完这个堆空间后要释放之。

全局变量全部存放在静态存储区,在程序开始执行时给全局变量分配存储区,程序行完毕就释放。在程序执行过程中它们占据固定的存储单元,而不动态地进行分配和释放;

以上是关于C语言中定义的静态变量存放在栈区,动态分配的内存空间位于堆区。的主要内容,如果未能解决你的问题,请参考以下文章

C语言进阶四.动态内存管理

C语言栈区与堆区

c语言中啥是动态分配内存?

内存四区模型

c语言里啥变量存储在堆中啥变量存储在栈中啊!

java里的静态成员变量是放在了堆内存还是栈内