C C 傳值 傳址 傳引用與指標型形參

2021-09-11 20:15:19 字數 941 閱讀 7986

傳值:直接把實參拷貝乙份放入新開闢的記憶體,對拷貝後的數值進行相應的函式操作;

傳址:把實參位址拷貝乙份放入新開闢的記憶體,通過拷貝的位址達到操作實參的目的;

傳引用:沒有拷貝過程,直接對實參進行函式操作,&引用只是對實參起了個綽號;

實參的資料型別要和形參的資料型別保持一致;實參是位址時,形參時指標;實參是二級指標時,形參也是二級指標。

#include

using namespace std;

int g = 300;

int plus2(int **p)

int plus3(int &p)

void set(int* &p, int *&q)

int main()

{int a = 10, b = 20;

int pa = &a, pb = &b;

int ppa=&pa;

cout << &ppa<< endl;

cout << ppa<< endl;

cout << *ppa<< endl;

cout << **ppa<< endl;

plus2(ppa);

cout << &ppa<< endl;

cout << ppa<< endl;

cout << *ppa<< endl;

cout << **ppa<< endl;

cout << a<< endl;

plus3(a);

cout << a<< endl;

cout << pa << endl << pb << endl;

cout << &pa<< endl;

set(pa, pa); // pa現在指向g,但pb還是指向b,這就是引用和非引用的差別

cout << &pa<< endl;

cout << a<< endl;

return 0;

指標 引用 傳值 傳址

個人總結 首先定義 struct binarytreenode 定義變數 1 binarytreenode ptreenode 2 binarytreenode n ptreenode 3 binarytreenode k 4 binarytreenode m k 引用變數必須初始化 定義 位址也稱...

C 傳值 傳址 傳指標 傳引用

相關概念 c 三種傳遞引數方式 傳引數的值 稱值傳遞,簡稱傳值 傳引數的位址 稱位址傳遞,簡稱為傳址 和引用傳遞 稱為傳引用 相應的函式傳值呼叫,傳址呼叫和傳引用呼叫 形參 實參 函式定義時參數列中的引數稱為形式引數,簡稱形參 函式呼叫時參數列中的引數稱為實際引數,簡稱實參。實參和形參之間的資料傳遞...

傳值,傳址和傳引用

傳值方式 將實參的值拷貝給函式或方法,在函式內對形參進行操作,操作的物件是實參的拷貝,對實參本身沒有影響,在函式結束返回後,形參被丟棄釋放,實參的內容不會被改變。c 一條基本原則 在預設情況下,引數只能以值傳遞的方式給函式,被傳遞到函式的只是變數的值,永遠不會是變數本身。void exchange ...