Re: [問題] 關於新手十戒的小問題

看板C_and_CPP (C/C++)作者 (snowlike)時間16年前 (2009/10/31 19:01), 編輯推噓2(205)
留言7則, 3人參與, 最新討論串3/3 (看更多)
c 沒有 call by reference; 在 c++ 可以這麼作 void func(int &d) { d=2; } int d; func(d); c 採 call by address(pointer) 實現 void func(int *ptr) { *ptr=2; } int d; func(&d); 以上都正確無誤,但不是說就表示相等 但是現在想傳遞的是指標,其實不管 by 不 by 的 int *target=NULL; int *ptr=target; ptr=target; ptr=(int*)malloc(sizeof(int)); 怎麼看要傳遞的target都是給拋棄了 就參考 call by address 來實作好了;對target來說,位址表示成 &target func(&target); 那麼 void func((int ??) ptr) {...} ? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.33.184.50

10/31 19:07, , 1F
個人覺得, 搞清楚call by value與call by reference就好
10/31 19:07, 1F

10/31 19:07, , 2F
call by address還是call by pointer什麼的都是很容易混
10/31 19:07, 2F

10/31 19:08, , 3F
淆, 而且都不是什麼正式的說法, 非常不建議使用....@_@"
10/31 19:08, 3F

10/31 19:10, , 4F
t大的這篇 #16iH6_f_ 可以看一下....:)
10/31 19:10, 4F

10/31 22:53, , 5F
如果我說 c 只有call by value 不管傳什麼都是傳value
10/31 22:53, 5F

10/31 22:53, , 6F
這樣到底對不對呀
10/31 22:53, 6F

11/01 00:01, , 7F
沒錯 c只有call by value
11/01 00:01, 7F
文章代碼(AID): #1Ax1Zi8- (C_and_CPP)
文章代碼(AID): #1Ax1Zi8- (C_and_CPP)