阿摩線上測驗 登入

申論題資訊

試卷:106年 - 106 鐵路特種考試_高員三級_資訊處理:程式語言#62399
科目:程式語言
年份:106年
排序:0

申論題內容

二、傳值呼叫(call by value)與傳址呼叫(call by address)的差異為何?試以兩數對調 的問題撰寫程式說明之。(20 分)

詳解 (共 1 筆)

詳解 提供者:hchungw
傳值呼叫 (Call by Value) 與 傳址呼叫 (Call by Address) 的差異
傳值呼叫 (Call by Value)
在傳值呼叫中,函數接收的是參數的副本。這意味著在函數內對參數的修改不會影響到原來的變量。
傳址呼叫 (Call by Address)
在傳址呼叫中,函數接收的是參數的地址。這意味著在函數內對參數的修改會直接影響到原來的變量,因為函數操作的是變量的地址。
以兩數對調為例來說明
傳值呼叫範例
在傳值呼叫中,變量的值會被傳遞給函數,但函數內的更改不會影響到原來的變量。