c语言指针在什么情况下需要malloc,什么时候可以不这样,(被这个问题搞晕了)

2024-11-17 22:14:31
推荐回答(1个)
回答1:

  1. C语言的内存模型包含有栈和堆两部分。

  2. 栈存放的是函数执行时的变量等,这部分变量由系统自动管理,比如 int a;等,这些变量在函数体结束时自动收回。

  3. 堆存放的是由用户自己手动管理的变量,这些变量是的由malloc函数建立,由 free函数释放。不会在函数体结束时自动收回。