形參和實參的概念

來源:互聯網
上載者:User
關鍵字 php
什麼叫形參和實參?
(已經百度,感覺沒說清楚,或者我沒聽懂)。
舉個例最好了。

回複內容:

什麼叫形參和實參?
(已經百度,感覺沒說清楚,或者我沒聽懂)。
舉個例最好了。

PHP不太瞭解,但我可以用C給你解釋,原理相同。
形參,形式參數。表示你的函數裡所要用的參數的類型和名字。
比如

void fn(int a, int b){    return a+b;}

這裡面的a和b就是形參,它代表的是函數所用的參數的形式。
而實參更好理解了,實際參數,也就是你執行這個函數時真正使用的參數。

c = fn(1,2);

這裡面的1和2就是實參。

形參就是函數為要傳入的值準備的一個外殼,而實參就是最後傳入形參,也就是塞進那個殼裡的實際的值,在函數內你可以使用外殼訪問殼內的值

形參和實參,可以簡單從字面上理解:那就是走形式的參數;和實際的參數;

例子理解:

function sum($a, $b = 1) {    return $a + $b;  // $a, $b 為形參}sum(1, 2);  //1,2 為實參的值sum(1);  // 此處未定義$b的值,所以會調用預設值1;但調用該函數。實參僅僅是$a

更深入理解

function params() {    return func_get_arg();  // 形參一個都沒有,但可以通過func_get_arg()函數擷取實參數}params(1, 2, 3, 4, ....);  // 此處調用函數,但函數並未指定參數(形參);但我同樣可以傳參數(而且數量不限制),此實體的參數即為實參

形參佔位,實參傳值

形參當然還用來限制式呼叫時資料的類型和個數

就是傳地址和傳值的區別

既然是舉例子,我就不擺那些自己都看不懂的理論了,高中的定義域和定義域中的值,還有印象嘛?實參好比定義域中的值,形參好比定義域。求大神輕拍

function dosomething($a 形參){

$b = $a 實參; 

}

當你寫一個函數時,函數需要的參數是形參
當你調用一個函數時,函數用到的參數是實參

function foo($a) {}

此時$a有值嗎?沒有,所以是形參。

$b = 5;

此時$b有值嗎?有,所以是實參。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.