Re: C/C++ 语言新手十三诫 -- Ver. 2016

楼主: Hazukashiine (私は幸せです)   2016-06-09 14:14:08
※ 引述《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();
作者: wtchen (没有存在感的人)   2016-06-09 14:50:00
感谢,想一下怎么加进去。改好了,谢谢
楼主: Hazukashiine (私は幸せです)   2016-06-10 00:50:00
更新了下方的解释文字 :)让他看起来比较符合美感(笑
作者: wtchen (没有存在感的人)   2016-06-10 00:53:00
改好了,谢谢

Links booklink

Contact Us: admin [ a t ] ucptt.com