作者lanlansaysay (Biu)
看板Grad-ProbAsk
標題[理工] 資結 參數傳遞
時間Sun Jul 5 19:59:30 2020
https://i.imgur.com/Mgr5yR6.jpg
想請問這題為什麼 i 跟 a[ i ] 都被改變了
b:integer 是代表宣告b為區域變數嗎
想請問有宣告跟沒宣告的差別
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.76.123.73 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Grad-ProbAsk/M.1593950372.A.680.html
1F:推 cossetannie: call by name是把名字替換 這題把a看作i ,b看成a[i] 07/05 21:30
2F:→ cossetannie: 所以swap裡會變成 temp=i ,i=a[i] ,a[i]=temp 07/05 21:31
3F:→ cossetannie: 再把值帶入得到 temp=3 ,i=a[3]=4, a[4]=3 07/05 21:32
4F:→ cossetannie: call by value跟call by name是不一樣的傳遞方式 07/05 21:33
5F:→ cossetannie: 然後b:integer只是告訴你宣告一個int變數而已 07/05 21:34
6F:→ lanlansaysay: 了解了 感謝樓上 07/06 20:02