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