題組內容
四、如果我們採取不同參數傳遞的方法,請回答下面程式執行的結果: (每小題 4 分,共 12 分)
⑵ pass-by-name
詳解 (共 2 筆)
詳解
y=fun(x, y)+y;
fun(int a, int b){b+=a; a=b+x; return a;}
a=x b=y (程式裡頭也是)
b+=a 等於 b=1+2=3(=y)
a=b+x 等於 a=3+2 因為a=x=2 把a和x視為不同寫法而已
return a=5(=x);
y=5+3=8
答案:x=5 y=8
詳解
請問這題解題怎麼解?