C語言問題函式中形參若為指標,則呼叫時對應位置上的實參不能

2021-04-02 12:48:08 字數 952 閱讀 8242

1樓:

不能是 簡單變數,因為 它不是位址。

語法規則而已。

形參若為指標,實參必須是 指標變數,或 陣列名,或 簡單變數的位址。

陣列名 就是陣列的首位址,是位址

簡單變數的位址 是位址

形參若為指標,實參是 指標變數,這是一一對應,天經地義。

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

2樓:匿名使用者

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

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

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

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

3樓:孟於清

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

4樓:jyw金

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

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

5樓:巢秀榮容子

這程式是你寫的嗎?

要是你寫的話

你就看下面的三段話

就能找出。

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

add(int

a,int

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

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

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

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

C語言指標建立函式問題,C語言指標呼叫函式問題,急求解釋(本題是《c和指標》上的題目)

第乙個表示傳遞graphadjlist型別的引用g,第二個表示傳遞graphadjlist型別的指標g 另外這是c 不是c。c語言指標呼叫函式問題,急求解釋 本題是 c和指標 上的題目 c語言指標作函式引數時的返回問題 首先,弄懂函式引數都是靠值傳遞。指標也是。進入函式後,函式建立幾個空間給形參,再...

c語言函式和指標的問題,C語言函式和指標的問題

第乙個猜測 void operatestate u8 其中operatestate是個函式指標 等效於void operatestate u8 類似第三個 第二個確定 void getoperatestate void u8 其中getoperatestate void 為函式體void u8 為返...

C語言,不定引數的函式指標問題

很巧我現在正好也有實現這樣函式的需求,其實就是看了c語言可變引數函式的相關資料,你就差不多知道怎麼實現了。只不過其中有乙個很重要的大坑,只要邁過去就沒問題。我是試了半天才明白的 如果引數是char或float型別,這樣的引數放在可變引數部分的話,編譯器是會預設把它們的型別提公升為相應的 全 型別的 ...