[理工] 資結 參數傳遞

作者: lanlansaysay (Biu)   2020-07-05 19:59:30
https://i.imgur.com/Mgr5yR6.jpg
想請問這題為什麼 i 跟 a[ i ] 都被改變了
b:integer 是代表宣告b為區域變數嗎
想請問有宣告跟沒宣告的差別
作者: cossetannie (paa)   2020-07-05 21:30:00
call by name是把名字替換 這題把a看作i ,b看成a[i]所以swap裡會變成 temp=i ,i=a[i] ,a[i]=temp再把值帶入得到 temp=3 ,i=a[3]=4, a[4]=3call by value跟call by name是不一樣的傳遞方式然後b:integer只是告訴你宣告一個int變數而已
作者: lanlansaysay (Biu)   2020-07-06 20:02:00
了解了 感謝樓上

Links booklink

Contact Us: admin [ a t ] ucptt.com