PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
[问题] 用alloca申请RAM,函式返回后没有释放
楼主:
bashinan
(浪迹天涯)
2019-09-09 13:46:20
开发环境 : win10 / vs2019 c/c++
疑问: 请问用alloca申请的stack RAM在函式返回后何时会被回收 ?
作者:
wei115
(ㄎㄎ)
2019-09-09 15:08:00
alloca在函式返回后会被自动释放八
作者:
Gway
(我爱的你 也爱我 好吗?)
2019-09-09 16:30:00
如果你问的是储存local variable 的stack frame 确实是return 就释放 如果你问的是dynamic allocate 除非明确做free的动作 否则要等到程式执行结束 作业系统会帮忙回收
作者:
ando5566
(风云变色)
2019-09-09 22:35:00
Allocate是放heap , 没有所谓alloc 在stack的事
作者:
LPH66
(-6.2598534e+18f)
2019-09-10 03:12:00
http://man7.org/linux/man-pages/man3/alloca.3.html
alloca 确实是放 stack 喔, 所以一楼正解可以把它想像成跟该函数的区域变量一起消失
作者:
Gway
(我爱的你 也爱我 好吗?)
2019-09-10 06:23:00
L大好神 我第一次看到这API xD
作者:
Bencrie
2019-09-10 09:18:00
alloca 不在标准内,虽然很多平台都有
作者:
tinlans
( )
2019-09-10 12:46:00
alloca 看起来是函式,实际上是告诉编译器多配置 stack上多少空间的指示命令,编译器在编译期就能静态算出要多分配多大的空间给当前的 stack frame。这单纯是关系到函式进出点 stack pointer 跳多远而已。
作者:
ando5566
(风云变色)
2019-09-10 17:44:00
我也是第一次看 我以为是allocate的缩写
作者:
b0920075
(Void)
2019-09-10 18:24:00
之前看到也以为作用在heap上...让我找了好久
作者:
Killercat
(杀人猫™)
2019-09-10 21:09:00
我以为这三兄弟malloc calloc alloca大家都耳熟能详XD
作者:
Gway
(我爱的你 也爱我 好吗?)
2019-09-10 21:13:00
我以为三兄弟是malloc callow realloc?
继续阅读
[问题] 请问大家会建议用纯C刷Leetcode吗?
qazkevin
Re: [问题] 字符指标的问题
ando5566
Re: [问题] 字符指标的问题
sakishil
[问题]printf输出过多时前面字符被挤掉?
melogod
Re: [问题] 字符指标的问题
poyenc
[问题] 多执行绪library问题
ofd168
[问题] 字符指标的问题
allssddaa
[问题] 工具书版本太旧?
greengobyw
[问题] Calling non-member function
sleepy5300
[问题] 请问linux小程式
liptonbin
Links
booklink
Contact Us: admin [ a t ] ucptt.com