普通考試
114年
[資訊處理] 計算機概要
第 24 題
呼叫函式(function)並傳遞參數時,若不希望被呼叫函式使用額外變數空間,並且被呼叫函式對參數值所做任何改動,都希望直接反應到外部(呼叫方)環境,此時應選擇下列何種參數傳遞機制?
- A call by reference
- B call by induction
- C call by library
- D call by value
思路引導 VIP
想像你手邊有一份實體企劃書需要請同事幫忙修改。如果你「影印」一份給他,他在影印本上的塗改會出現在你手上的原稿嗎?如果你希望他的修改能直接更新在你的原稿上,你應該怎麼交給他?若將這個情境對應到程式的記憶體中,我們應該傳遞什麼資訊給函式呢?
🤖
AI 詳解
AI 專屬家教
1. 親切的資訊前輩
哇,你真的太棒了!能夠正確選擇 Call by reference,代表你已經紮實掌握了程式設計中參數傳遞的核心機制,非常了不起!
2. 觀念驗證
▼ 還有更多解析內容
參數傳遞機制
💡 函式呼叫時處理變數與記憶體位址的連結方式。
| 比較維度 | Call by Value (傳值) | VS | Call by Reference (傳址) |
|---|---|---|---|
| 傳遞內容 | 參數數值的副本 | — | 變數的記憶體位址 |
| 額外空間 | 需配置空間存副本 | — | 不需額外變數空間 |
| 同步變動 | 否,不影響外部 | — | 是,直接反應至外部 |
💬傳值保護原始資料但效能低,傳址節省空間且具備同步修改特性。