形參出現在函數定義中安寺,在整個函數體內都可以使用厕妖,離開該函數則不能使用。
實參出現在主調函數中挑庶,進入被調函數后,實參變量也不能使用软能。
形參和實參的功能是作數據傳送迎捺。發(fā)生函數調用時,主調函數把實參的值傳送給被調函數的形參從而實現主調函數向被調函數的數據傳送查排。
1.形參變量只有在被調用時才分配內存單元凳枝,在調用結束時, 即刻釋放所分配的內存單元跋核。因此岖瑰,形參只有在函數內部有效。 函數調用結束返回主調函數后則不能再使用該形參變量砂代。
2.實參可以是常量蹋订、變量、表達式刻伊、函數等露戒, 無論實參是何種類型的量,在進行函數調用時捶箱,它們都必須具有確定的值智什, 以便把這些值傳送給形參。 因此應預先用賦值丁屎,輸入等辦法使實參獲得確定值荠锭。
3.實參和形參在數量上,類型上晨川,順序上應嚴格一致证九, 否則會發(fā)生“類型不匹配”的錯誤键思。
4.函數調用中發(fā)生的數據傳送是單向的。 即只能把實參的值傳送給形參甫贯,而不能把形參的值反向地傳送給實參吼鳞。 因此在函數調用過程中,形參的值發(fā)生改變叫搁,而實參中的值不會變化赔桌。
5.當形參和實參不是指針類型時,在該函數運行時渴逻,形參和實參是不同的變量疾党,他們在內存中位于不同的位置,形參將實參的內容復制一份惨奕,在該函數運行結束的時候形參被釋放雪位,而實參內容不會改變。
如果函數的參數是指針類型變量,在調用該函數的過程中梨撞,傳給函數的是實參的地址雹洗,在函數體內部使用的也是實參的地址,即使用的就是實參本身卧波。所以在函數體內部可以改變實參的值时肿。