網站首頁 學習教育 IT科技 金融知識 旅遊規劃 生活小知識 家鄉美食 養生小知識 健身運動 美容百科 遊戲知識 綜合知識
當前位置:趣知科普吧 > 生活小知識 > 

值傳遞和地址傳遞

欄目: 生活小知識 / 發佈於: / 人氣:1.74W

按值傳遞:在過程被調用時,傳遞給形參的是調用過程中的相應實參的值,形參與實參各佔有不同位置的儲存空間,被調用過程在執行過程中,改變了形參變量的值,但不會調用過程的實參值。 

值傳遞和地址傳遞

按地址傳遞:就是當調用一個過程時,是把實參變量的內存地址傳遞給被調用過程的形參,也就是說形參與實參使用相同地址的內存單元。因此當在被調用過程中改變形參的值,就等於改變了實參的值。

按值傳遞時,實質上實參a只是把一個副本傳遞給形參x,也可以直接理解爲傳遞的結果是讓x*2中的x的值等於10(即a的值),乘以2後再賦值(賦值不用解釋吧)給x,即實際上w方法的運算並沒有對a本身進行操作。所以調用w方法前後a值始終等於10,而w方法得到的結果是20。

按址傳遞時,實質上實參a是把指針(地址)傳遞給形參x,這個指針指向的地址的值即是10,此時a與x分別有一個指針同時指向10所在地址,即實際上w方法對a本身直接進行了操作(a自身參與運算)。所以調用w方法前後a值分別等於10和20,而w方法得到的結果是依然是20。

Tags:地址 傳遞