c指標經典案例 學習筆記01

2021-10-05 16:38:24 字數 903 閱讀 7415

案例一:

已知兩個變數a,b,用c語言將他們的值進行交換?

在沒有學習指標的是我們常規的思路是

#include void swap(int v1,int v2)

int main()

這裡編譯後執行的結果是:

hello, world!

a = 10,b = 4

v1 = 10,v2 = 4

v1 = 4,v2 = 10

a = 10,b = 4

可以看到a,b的值其實沒有變化,交換的是v1與v2的值,那怎麼樣才能實現呢?這裡我們用指標試一下,**如下

#include void swap(int *v1,int *v2)

int main()

除錯結果為:

hello, world!

a = 10,b = 4

a = 4,b = 10

這就達到了我們的目的,為什麼?指標就是位址,我們傳入了a,b變數的位址值,在swap函式裡面改變了位址裡面的值。

案例二:讓函式sum(int v1,int v2)返回和和差兩個值

#include int sum(int v1,int v2,int *p)

int main()

輸出結果為:

hello, world!

sum = 14,minus = 6

乙個函式實現返回兩個值,這裡我們用指標實現了,在函式內部修改函式外部某個值,定義引數指標,把變數位址傳進去。

用指標,乙個函式可以返回無限個值,乙個預設返回,其他返回值通過指標的引數傳遞。

c 學習筆記01

c 標準輸入輸出流類物件 cin cout cerr 對應c語言中的3個檔案指標 stdin,stdout stderr 結構體和類的區別主要在訪問控制方面 訪問許可權分為3種 public,private,protect 結構體是一種特殊的類預設為public 類預設為private 物件導向思想...

C 學習筆記01

1 引用 定義乙個引用,並將其初始化為引用某個變數。型別名 引用名 某變數名 int n 4 int r n r引用了n,r的型別是int 某個變數的引用,等價於這個變數,相當於該變數的乙個別名。注 引用的簡單示例 在c語言中 void swap int a,int b int n1,n2 swap...

C 指標學習筆記

例 int變數 updates 指標變數 p updates updates表示值,updates表示位址 p updates表示位址,p updates表示指標所指向的值。所以 updates p updates,updates p updates 指標的初始化 int p updates 表明 ...