C C 中函式引數的三種傳遞方式

2021-09-27 01:23:02 字數 1067 閱讀 8809

**:

還是看原文的格式更舒服些

一、值傳遞

這種傳遞方式中,實參和形參是兩個不同的位址空間引數傳遞的實質是將原函式中變數的值,複製到被呼叫函式形參所在的儲存空間中,這個形參的位址空間在函式執行完畢後,會被**掉。整個被呼叫函式對形參的操作,只影響形參對應的位址空間,不影響原來函式中的變數的值,因為這兩個不是同乙個儲存空間。

二、引用傳遞

這種傳遞方式中,形參是引用型別變數,其實是實參的乙個別名,在被呼叫函式中,對引用變數的所有操作等價於對實參的操作。整個被呼叫函式對形參的操作執行完畢後,原先的實參的值也會發生改變

三、指標傳遞

這種傳遞方式中,實參是變數的位址,形參是指標型別的變數。在函式中對指標變數的操作,就是對實參(變數位址)所對應的變數的操作。整個被呼叫函式對形參的操作執行完畢後,原函式中的變數的值將會發生改變

**如下:

#include

using namespace std;

//值傳遞 交換前a=1,b=2;交換後a=1,b=2;

void swap(int a,int b)

//引用傳遞 交換前a=1,b=2;交換後a=2,b=1;

void swap(int &a,int &b)

//指標傳遞 交換前a=1,b=2;交換後a=2,b=1;

void swap1(int *a,int *b)

//主函式

int main()

C C 中函式引數的三種傳遞方式

一 值傳遞 這種傳遞方式中,實參和形參是兩個不同的位址空間,引數傳遞的實質是將原函式中變數的值,複製到被呼叫函式形參所在的儲存空間中,這個形參的位址空間在函式執行完畢後,會被 掉。整個被呼叫函式對形參的操作,只影響形參對應的位址空間,不影響原來函式中的變數的值,因為這兩個不是同乙個儲存空間。二 引用...

C C 中函式引數的三種傳遞方式

一 值傳遞 這種傳遞方式中,實參和形參是兩個不同的位址空間,引數傳遞的實質是將原函式中變數的值,複製到被呼叫函式形參所在的儲存空間中,這個形參的位址空間在函式執行完畢後,會被 掉。整個被呼叫函式對形參的操作,只影響形參對應的位址空間,不影響原來函式中的變數的值,因為這兩個不是同乙個儲存空間。二 引用...

C C 函式引數的三種傳遞方式

函式引數傳遞方式一 值傳遞 格式 void swap int a,int b void main 函式引數傳遞方式二 位址傳遞 格式 void swap int a,int b void main 函式引數傳遞方式三 引用傳遞 注意 引用傳遞在c中不可用,僅c 支援 格式 void swap int...