討論串[問題] malloc問題
共 6 篇文章
首頁
上一頁
1
2
下一頁
尾頁

推噓0(0推 0噓 2→)留言2則,0人參與, 最新作者elefant時間16年前 (2009/03/16 22:53), 編輯資訊
0
0
1
內容預覽:
從上面gcc編譯出來的assembly看來. 即使參數列上是reference. compiler還是會在函式呼叫點. 先對(int*)取址然後push到stack. 所以牽扯到一個pointer的copy. 但 http://en.wikipedia.org/wiki/Reference_(C%2
(還有119個字)

推噓1(1推 0噓 2→)留言3則,0人參與, 最新作者littleshan (我要加入劍道社!)時間16年前 (2009/03/16 20:15), 編輯資訊
0
0
0
內容預覽:
傳 reference 本質上還是傳 pointer 呀. 只是 dereference 的時候 compiler 幫你做掉了. 直接來看 assembly 就知道了. #include <cstdlib>. void alloc_mem(int** p). {. *p = (int*)malloc
(還有599個字)

推噓7(7推 0噓 7→)留言14則,0人參與, 最新作者jerohands (這就是人生啊)時間16年前 (2009/03/16 16:57), 編輯資訊
0
0
0
內容預覽:
在下也來分享一下:. void alloc_mem(int *&p) ← 使用 call by reference. {. p = (int*)malloc(sizeof(int));. }. int main(). {. int *ptr = NULL;. alloc_mem(ptr);. ret
(還有87個字)

推噓1(1推 0噓 2→)留言3則,0人參與, 最新作者timlong (timlong)時間16年前 (2009/03/15 22:10), 編輯資訊
0
0
0
內容預覽:
void alloc_mem(int **p). {. *p = (int *)malloc(sizeof(int));. }. int main(). {. int *ptr=NULL;. alloc_mem(&ptr);. /*...*/. }. --. 發信站: 批踢踢實業坊(ptt.cc

推噓2(2推 0噓 1→)留言3則,0人參與, 最新作者peiga (做自己)時間16年前 (2009/03/15 21:38), 編輯資訊
0
0
0
內容預覽:
謝謝2位前輩的熱心指導,不過小弟還是不能意會. 我所知,malloc(size_t)是程式向作業系統要求一定大小的記憶體空間作配置. 所以malloc()的回傳值是一個point,而這個point會指向我們向作業系統要求. 的記憶體空間的位址. 一般用法像是. int main(). {. int
(還有425個字)
首頁
上一頁
1
2
下一頁
尾頁