函式中的形式引數和實際引數

2021-12-30 11:23:25 字數 931 閱讀 3553

執行結果:

分析:c語言中實際引數和形式引數之間採用值傳遞的方式來傳遞資料。在被調函式中,使用的是實際引數的乙個拷貝資料。我們在swap函式中交換了a和b,那只是主函式x,y資料的乙個備份,不能對main函式中的x,y產生影響,就像我們修改了乙個影印件,不會對原件造成任何影響。

形式引數和實際引數可以不同名。

使用陣列作為函式的形式引數,可以完成兩個整數的交換。傳遞的是陣列的名字(陣列的第乙個元素的起始位址)

執行結果:

根本的原因就是,陣列作為引數的時候,傳遞的是陣列的首位址,而在記憶體中,位址是唯一的, 無論是在main函式中修改,還是在swap以及其他函式中修改乙個位址上的內容,都會對這個位址產生效果。

在乙個函式中測試作為形式引數的陣列的長度是不能實現的,原因:陣列傳遞的時候傳遞的是位址。sizeof(位址) = 4.4/4=1。所以,形式引數為陣列的時候,我們應該設計成兩個引數,乙個是陣列,乙個就是陣列的長度。

int f(int a, int count ,..)

形式引數和實際引數的區別

形參 全稱為 形式引數 是在定義函式名和函式體的時候使用的引數,目的是用來接收呼叫該函式時傳遞的引數。實參 可以是常量 變數 表示式 函式等,無論實參是何種型別的量,在進行函式呼叫時,它們都必須具有確定的值,以便把這些值傳送給形參。因此應預先用賦值,輸入等辦法使實參獲得確定值。實參和形參的區別 空白...

形式引數和實在引數

形式引數 值形式引數 變數形式引數。函式或過程定義時的引數為形式引數。實在引數 函式或過程呼叫時的引數為實在引數。1 值形式引數 值形參的作用 值形參從與它位置對應的實參中接受資料並把資料傳送到所在的過程或函式中。當過程或函式被呼叫時,系統為每個值形參開闢臨時的儲存單元,並按從左到右的順序,把實在引...

C語言當中的實際引數及形式引數

首先我們來定義乙個函式,使其可以交換兩個整形變數的內容.include include void swap int x,int y int main 程式執行結果如下 我們不是定義了乙個函式,要將num1與num2的值進行交換嗎?為什麼num1與num2的值沒有發生變化呢?這就涉及到了c語言中函式的...