[問題] 副程式動態宣告記憶體一問

看板C_and_CPP (C/C++)作者 (JoJo冒險魯蛇)時間11年前 (2015/05/02 21:00), 11年前編輯推噓0(008)
留言8則, 5人參與, 最新討論串1/1
大家好~小弟又有個觀念問題想請教一下~ 想請問一下如果主程式想要副程式動態分配出記憶體給p, 當再回到主程式時,記憶體好像會被回收掉?? 但我的指標變數p是主程式丟過去的,所以生命週期應該 隨主程式結束後,記憶體才會回收才對?? void test(char *ptr) { ptr = (char*)malloc(sizeof(char)); *ptr = 10; } int main(void) { char *p; test(p); printf("%d\n",*p); } 這邊觀念有錯的話還請版友指正,謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.176.206.14 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1430571601.A.423.html

05/02 21:08, , 1F
十戒
05/02 21:08, 1F

05/02 21:17, , 2F
五戒
05/02 21:17, 2F
恩~看完後了解了,不過好像不能自D咧~XDD ※ 編輯: Dioooo (180.176.206.14), 05/02/2015 21:19:49

05/03 09:26, , 3F
這跟五戒無關吧? 反而是 D(13) 戒的範例幾乎一模一樣
05/03 09:26, 3F

05/03 10:02, , 4F
前面不就討論過這了
05/03 10:02, 4F

05/03 16:30, , 5F
ptr不就是區域性自動變數指標嗎...
05/03 16:30, 5F

05/03 16:31, , 6F
怎麼會跟五戒沒關
05/03 16:31, 6F

05/03 20:38, , 7F
因為他錯到根本連把他回傳都沒有XDrz
05/03 20:38, 7F

05/04 23:32, , 8F
OPIV: 1. 沒有回傳 2. 不是 *指向* 區域性自動變數的指標
05/04 23:32, 8F
文章代碼(AID): #1LHCfHGZ (C_and_CPP)
文章代碼(AID): #1LHCfHGZ (C_and_CPP)