C語言函式實參與形參的結合方式有哪兩種

2025-06-26 12:20:34 字數 1438 閱讀 2858

1樓:衝向未來

值傳遞 和 位址傳遞。

2樓:手機使用者

1,被調函式的形參*a,*b為區域性指標變數,函式體的功能是交換兩個指標的的值,形象的說就是以前a指向i,b指向j,交換後就是a指向j,b指向i;所以不改變主調函式的值;

#include

void swap (int *a ,int *b)2,形參*a,*b同樣為區域性指標變數,但函式體的功能是交換a,b所指向變數i,j的值;

void swap (int *a ,int *b)

c語言中函式形參與實參的區別與聯絡

3樓:岔路程式緣

形參與實參在本質上是兩個不同的東西。

比如函式f(x)=y=x²+2x,x就是函式的引數,我們用c語言把派爛孫它寫出來就是:

float f(float x)

float y;

y=x*x+2*x;

return y;

你看看與f(x)=y=x²+2x何其相似!

當我們要計算f(2)的函式值時,就讓x=2,得到y=8,即f(2)=8。

在c語言這裡,我們就把x叫「形參」,把2叫「實參」,可以看出它們是多麼不同了吧!

如果有乙個變歷悔量a=1,也可以計算f(a)=2,其實在計算時,把a的值賦給了是實參,x仍然是形參。計算前後a的值並沒有變化。

如程式中呼叫:c=f(a)+f(2),結果得到c=10。

值得注意的是,往往實參與形參使用同乙個字母,比如都用x,但是這兩個x是不同的變數,實參x把值賦給形參x後,就沒有實參的什麼事了,在函式中形參x值的變化也不會塵鏈影響實參x的值。

說起它們的相同之處,就是它們的變數型別是一樣的;說起它們的聯絡,就是有一次實參對形參的賦值;說起它們的區別,則是兩個不同的變數。

c語言;函式的引數為 char *型別時,形參與實參結合的傳遞方式為

4樓:匿名使用者

void fun(char* p);

int a[6];

fun(a);

將陣列的首位址a傳給形參p

是這個意思嗎?

5樓:藝瘋藝狂

//自定義函式中形參的宣告。

char fun (char a,char b)//形參是這樣宣告//main函式中實參的傳遞。

main(void)

6樓:匿名使用者

就是字串指標。看來你對c語言的「函式"不完全理解才會這麼問!函式就好比乙個做冰棒的杯子(或模具),而水或牛奶以及其他用來做冰棒的原料好比函式的實參,冰棒做好了也就是函式返回了,實參與函式脫離關係,就好比我們冰棒做好了,從杯子裡取出冰棒。

而杯子還在那裡,但也許你用其他原料繼續做冰棒,於是又用杯子了,這就好比你換乙個實參又一次呼叫同乙個函式。

形參和實參的區別是什麼,c語言中形參和實參是什麼意思?有什麼區別?

實參是用來填充形參的。當函式被呼叫時,形參列在函式名後面的括號裡。執行函式呼叫時,實參被傳遞給形參。1 形參變數只有在被呼叫時才分配記憶體單元,在呼叫結束時,即刻釋放所分配的記憶體單元。因此,形參只在函式內部有效。函式呼叫結束返回主呼叫函式後則不能再使用該形參變數。2 實參可以是常量 變數 表示式 ...

在C語言中,函式的形參與實參之間的值傳遞是什麼意思 函式呼叫時如主函式中為swap a,b ,而從函式為

以int 型舉例 void swap int a,int b void swap1 int a,int b swap int int 稱之為實參 實際傳遞的是 a和 b 的地址 啊 在呼叫a與b 的值 a 使用的是原來的數 下面的 x,y a b 的值是x與y 的記憶體地址 swap1 int in...

c語言,關於形參實參單向值傳遞

分兩種情況bai給你對比一下du 函式形參zhi用普通變數,當dao函式被呼叫的時候,實參的版值被賦值給權 了形參,函式被呼叫的時候開闢了記憶體空間給形參,也就是資料被複制了,然後函式開始處理形參的資料,這個時候和實參的資料是沒有任何關係了。當函式結束的時候形參的記憶體空間是要被釋放,或者說刪除的,...