看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《wtchen (沒有存在感的人)》之銘言: : ______________ : 1. int* ptr; ptr -> |__未知的空間__| : ______________ : 2. 呼叫函式 newArray ptr -> |__未知的空間__| <- local : ______________ : 3. malloc 取得合法空間 ptr -> |__未知的空間__| : ______________ : |___合法空間___| <- local : ______________ : 4. 離開函式 ptr -> |__未知的空間__| 希望這張圖可以更清楚描繪出更多細節,並移除合法和未知的空間等有歧義的用詞。 ┌────┐ ┌────┐ ┌────┐ ┌────┐ Heap │ │ │ │ │ 新配置 │ │ 已泄漏 │ │ │ │ │ │ 的空間 <─┐ │ 的空間 │ │ │ │ │ │(allocd)│ │ │(leaked)│ │ │ │ │ ├────┤ │ ├────┤ │ │ │ │ │ : │ │ │ │ │ │ │ │ │ : │ │ │ : │ │ │ ├────┤ ├────┤ │ │ : │ │ │ │ local ├─┐ │ local ├─┘ │ │ ├────┤ ├────┤ │ ├────┤ ├────┤ Stack │ ptr ├─┐ │ ptr ├─┤ │ ptr ├─┐ │ ptr ├─┐ └────┘ ╧ └────┘ ╧ └────┘ ╧ └────┘ ╧   未初始化 函式呼叫 配置空間 函式返回 int *ptr; local = ptr; local = malloc(); -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.241.157.183 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1465452851.A.B5D.html
wtchen: 感謝,想一下怎麼加進去。 06/09 14:50
※ 編輯: Hazukashiine (111.241.157.183), 06/09/2016 14:52:53
wtchen: 改好了,謝謝 06/09 14:53
Hazukashiine: 更新了下方的解釋文字 :) 06/10 00:50
Hazukashiine: 讓他看起來比較符合美感(笑 06/10 00:51
wtchen: 改好了,謝謝 06/10 00:53