《每天學一天C語言系列》之形參和實參

2021-10-06 20:09:58 字數 1883 閱讀 6432

形參和實參的定義以及作用

形參和實參在函式呼叫中的記憶體問題

在簡單函式運用中,形參和實參的資料型別

形參和實參在c語言中的資料傳遞

一、形參和實參的定義以及作用

形參:全稱為「形式引數」是在定義函式名和函式體的時候使用的引數,目的是用來接收呼叫該函式時傳遞的引數。

「形參」的作用就是實現主調函式與被調函式之間的聯絡,通常將函式所處理的資料,影響函式功能的因素或者函式處理的結果作為」形參「。沒有形參的函式在形參表的位置應該寫為void。

main函式也可以有形參和返回值,其形參也稱為命令列引數,由作業系統在啟動程式時初始化,其返回值傳遞給作業系統。

」實參「全稱為「實際引數」是在呼叫有參函式過程中,系統會把實參的值傳遞給被呼叫函式的形參(值傳遞)。

」實參「可以是常量、變數、表示式、函式等,無論實參是何種型別的量,在進行函式呼叫時,他們都必須具有確定的值,以便把把這些值傳送給形參。因此應預先賦值,輸入等方法使實參獲得確定值。

二、形參和實參在函式呼叫中的記憶體問題

函式中指定的形參變數,在未出現函式呼叫時,並不占用記憶體單元。在發生函式呼叫時,被調函式的形參被臨時分配記憶體單元,在呼叫結束後,形參所佔的記憶體單元被自動釋放。

三、在簡單函式運用中,形參和實參的資料型別

①如果函式一旦被定義,就可以多次呼叫,但是必須保證形參和實參資料型別一致。如果實參和形參資料型別不一致,則按照不同型別賦值規則進行轉換。

②在被定義的函式中,必須指定形參的資料型別(int型,double型等)。

**如下:

#include

intmain()

intmin

(float a,

float b)

/*函式定義*/

輸入數字,結果如下:(大家見諒筆記本壞掉了,只能用ipad了?)

在這個函式中,min函式的形參是float 型,主調函式min函式中的實參也是float 型。從鍵盤輸入2.3和5.6,在呼叫函式min(x,y)時,把x,y的值2.3和5.6傳遞給引數a,b。執行被調函式後,c的值為2.3,雖然return 語句中c為float型,但是函式定義為int 型,要把c的值作為函式的返回值,首先應將引數c轉換為int型,得到2,它就是函式的返回值。程式最後,min(x ,y) 帶回乙個整型值2返回到主調函式中,並賦值給z,但是z為float型,所以最後輸出結果為2.000000。

四、形參和實參在c語言中的資料傳遞

c語言規定:實參對形參變數的資料傳遞是「值傳遞」,即單向傳遞,只由實參傳遞給形參,而不能由形參傳回實參。簡言之就是當進行函式呼叫時,資料由實參傳遞到形參。

**舉例如下:

#include

intswap

(int i,

int j)

intmain()

執行結果如下:

這個程式中的swap函式的作用就是將形參i和j兩個數進行交換,因此,在函式內部輸出i和j時,兩個球實現了交換。但是c語言規定:只能把實引數值傳遞給形參,而形參不能把數值傳遞給實參。因此,main函式中的i和j還是原來的值,沒有實現交換

謹以此系列和大家一起學習

乾坤未定,你我皆是黑馬

更多系列將在不久推出!點讚就是對我最大的鼓勵,也是我能繼續更新下去的動力!

學C語言的第一天

第一次學,每天整理一點點。stdio.h以 h結尾的標頭檔案 以 c結尾的是原始檔。include 包含標頭檔案,就是一條預處理命令,它的作用就是通知c語言編譯系統在對c程式進行正式編譯之前做預處理工作 int main void int c語言的乙個關鍵字,它表示整數型別 main 主函式 表示空...

《每天學一點C語言系列》之陣列作為函式引數

陣列元素作為函式引數 什麼是陣列元素?程式設計舉例 陣列元素作為函式引數 程式分析 陣列名作為函式引數 什麼是陣列名?程式設計舉例 陣列名作為函式引數 程式設計分析 程式設計說明 我們知道陣列元素和陣列名都是可以做為函式的引數的。那麼他們有什麼區別呢?我們今天就來介紹一下!一 陣列元素作為函式引數 ...

JNI學習之C語言第一天

引入標頭檔案。類似import 只有函式的宣告,並沒有函式的實現,編譯時,會去找到函式的實現。define crt secure no warnings 巨集定義 include include void main c的基本資料型別 int short long float double char ...