c語言函式呼叫時,實參和形參是如何傳遞的?什麼時候要寫指標型變數?求高手指點

2021-04-19 08:30:24 字數 2048 閱讀 6961

1樓:匿名使用者

形參bai在函式定義時表示的du一種佔位符zhi,實參就是裡面存有實際變數dao值或者版

常量,函式呼叫時,實參權值會自動傳遞給形參變數。指標比較複雜了。是變數的地址,如果引數型別是指標型別,則必須把實參變數的地址傳遞過去。當然在函式內也是間接引用實參變數的。

比如void f(int * p) //形參是指標型別變數下面是呼叫形式

f(&a); //呼叫函式,實參是變數a的地址。

2樓:孟於清

比如void main(void)是形參···· void main(unsigned int m)是實參

3樓:jyw金

回答:1.傳值呼叫,形參是實參的一個拷貝,形參和實參不是同一個儲存單元。

2.傳地址呼叫,將實參的地址傳給形參,形參和實參操作同一儲存單元。

4樓:巢秀榮容子

這程式是你寫的嗎?

要是你寫的話

你就看下面的三段話

就能找出。

1.比如你定義一個函式專void

add(int

a,int

b),這裡的屬a和b就是形參。

2.當你進行函式呼叫的時候,add(1,

2),這裡的1和2就是實參。

3.形參就是沒有賦值的變數,實參就是有賦值的變數

函式呼叫時的實參和形參之間的資料是單向的什麼傳遞

5樓:匿名使用者

實參傳遞給形參是單向傳遞,形參變數在未出現函式呼叫時,並不佔用記憶體,只在呼叫時才佔用。呼叫結束後,將釋放記憶體。執行一個被呼叫函式時,形參的值如果發生改變,並不會改變主調函式中的實參的值。

單向傳遞,只能由實參傳給形參,反之不能。

形參如同公式中的符號,實參就是符號具體的值,在呼叫過程前必須得到賦值;呼叫過程就是實現形參與實參的結合,把實參的值通過呼叫傳遞給形參,相當於把值代入公式進行計算。

6樓:哈巴

在c++中,引數傳遞的方式是「實虛結合」。

按值傳遞(pass by value)

地址傳遞(pass by pointer)引用傳遞(pass by reference)按值傳遞的過程為:首先計算出實參表示式的值,接著給對應的形參變數分配一個儲存空間,該空間的大小等於該形參型別的,然後把以求出的實參表示式的值一一存入到形參變數分配的儲存空間中,成為形參變數的初值,供被呼叫函式執行時使用。這種傳遞是把實參表示式的值傳送給對應的形參變數,故稱這種傳遞方式為「按值傳遞」。

7樓:

呼叫的時候 實參是不傳遞的

void 函式名(實參)

這個過程中 實參的值是不改變的。

void 函式名(形參)

也就是說是 指標的指的資料是有可能改變的。

函式呼叫的時候,僅僅是吧實參和形參的值傳遞進去

8樓:

函式呼叫時的實參和形參之間的資料是單向的是( 值傳遞方式 )

c語言遞迴,f=ff(n-1)*n;是如何計算的?怎麼也想不通求高手指點

9樓:匿名使用者

程式中給出抄的函式ff是一個遞迴函襲

數。主函式呼叫ff 後即進入函式ff執行,如果n<0,n==0或n=1時都將結束函式的執行,否則就遞迴呼叫ff函式自身。由於每次遞迴呼叫的實參為n-1,即把n-1的值賦予形參n,最後當n-1的值為1時再作遞迴呼叫,形參n的值也為1,將使遞迴終止。

然後可逐層退回。

下面我們再舉例說明該過程。設執行本程式時輸入為5,即求5!。在主函式中的呼叫語句即為y=ff(5),進入ff函式後,由於n=5,不等於0或1,故應執行f=ff(n-1)*n,即f=ff(5-1)*5。

該語句對ff作遞迴呼叫即ff(4)。

進行四次遞迴呼叫後,ff函式形參取得的值變為1,故不再繼續遞迴呼叫而開始逐層返回主調函式。ff(1)的函式返回值為1,ff(2)的返回值為1*2=2,ff(3)的返回值為2*3=6,ff(4)的返回值為6*4=24,最後返回值ff(5)為24*5=120。

函式呼叫時的實參和形參之間的資料是單向的什麼傳遞

實參傳遞給形參是單向傳遞,形參變數在未出現函式呼叫時,並不佔用記憶體,只在呼叫時才佔用。呼叫結束後,將釋放記憶體。執行一個被呼叫函式時,形參的值如果發生改變,並不會改變主調函式中的實參的值。單向傳遞,只能由實參傳給形參,反之不能。形參如同公式中的符號,實參就是符號具體的值,在呼叫過程前必須得到賦值 ...

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

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

C語言第十題這裡面實參和形參是什麼,它倆的區別是什麼,請詳細解釋一下

一個函式 bai void example int i 這裡du的i就是形zhi參dao 另一個函式內void example2 這裡的j就是實參 實參傳值給形參 void example j 呼叫函式時將j傳遞至容形參 2個逗號表示式的值是最後一個的值 c語言中什麼叫形參,什麼叫實參?來權威解釋,...