C語言中,形參和實參之間的傳遞規則是按值傳遞。具體來說,當調用函數時,函數的形參會被賦予實參的值,而不是實參本身。這意味著在函數內部對形參的修改不會影響實參的值,因為實參和形參是兩個不同的變量。
傳遞規則可以總結為以下幾點:
- 當調用函數時,實參的值會被復制到函數的形參中。
- 形參是函數內的局部變量,對形參的修改不會影響實參的值。
- 基本數據類型的形參和實參是兩個獨立的變量,它們之間的修改互不影響。
- 對于數組類型的形參,實際傳遞的是數組的首地址,形參和實參指向同一塊內存區域,對形參的修改會影響實參的值。
- 對于指針類型的形參,實際傳遞的是指針變量的值(即地址),形參和實參指向同一塊內存區域,對形參的修改會影響實參的值和內存內容。
- 如果形參是指針類型,那么可以通過修改指針指向的內存來修改實參的值。
- 如果形參是指針類型,并且指向的是數組,那么可以通過修改指針指向的內存來修改數組的內容,從而間接修改實參的值。