[問題] 想請問一個關於"參數傳遞"的問題

看板PLT (程式語言與理論)作者 (青春無敵)時間12年前 (2011/12/29 17:34), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/4 (看更多)
已閱讀過板規,若發文內容不適合在此板討論,會自行刪文  ^^" (也希望能告知是否有專門討論的版,萬分感謝) 在下目前在準備預官考試,其中"計算機概要"有一章節 在討論主程式和副程式間參數傳遞的問題題組 此題組著實令人困惑 -----題組如下-----  Sub (x,y,z) {x = y + z; y = z - x} main() {a=1; b=2; c=3 call Sub (a, b, a+c); print(a, b, c);} Q1: 此程式如果參數傳遞的方式是 call-by-value,輸出結果為何? A1: (1, 2, 3) Q2: 若參數傳遞的方式是 call-by-reference,輸出結果為何? A2: (6, -2, 3) Q3: 若參數傳遞的方式是 call-by-name,輸出結果為何? A3: (6, -2, 3) -- call-by-value的結果,可以理解 我想請問的是為何call-by-reference和call-by-name 會得到一樣的結果呢? 是否call-by-name的輸出有誤? 非常感謝你的解答 <(_ _)>   -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.68.96.60

12/29 19:19, , 1F
b好像應該是3?
12/29 19:19, 1F
文章代碼(AID): #1E_3G9J6 (PLT)
文章代碼(AID): #1E_3G9J6 (PLT)