C語言指標(一)

2021-07-16 21:01:30 字數 1082 閱讀 5519

乙個變數的位址稱為該變數的指標。如果有乙個變數專門用來存放另一變數的位址(即指標),則稱他為「指標變數」

#includeint main()

1、指標變數前面的「* 」表示該變數的型別為指標型變數 。a的位址是賦給指標變數pointer_1,而不是賦給*pointer_1(即變數a). 

2、乙個變數的指標的含義包括兩個方面,一是以儲存單元編號表示的位址(如編號為2000的位元組),一是它指向的儲存單元的資料型別(如int,char,float等)。

3、在說明變數型別時不能一般的說「a是乙個指標變數」,而應完整的說「a是指向整型資料的指標變數」 。

4、指向整型資料的指標型別表示為「int * 」,讀作「指向int的指標」或簡稱「int 指標」。

5、指標變數中只能存放位址(指標),不要將乙個整數賦給乙個指標變數 。

6、&  取位址運算子   &a是變數的位址。   *   指標運算子(或稱"間接訪問"運算子)  *p代表指標變數p指向的物件。

//交換p1,p2,不變a,b

#includeint main()

printf("a = %d, b = %d\n",a,b);

printf("max = %d, min = %d\n",*p1, *p2);

return 0;

}

//交換a,b的值,而p1,p2 的值不變 

#includeint main()

void swap(int *p1, int *p2)

上題與原意不符,c語言實參變數和形參變數之間的資料傳遞是單向的"值傳遞"方式。不可能通過執行呼叫函式來改變實參指標變數的值,但是可以改變實參指標變數所指向的變數 

/*輸入三個整數a,b,c,要求按由大到小的順序將他們輸出。用函式實現*/ 

#includeint main()

void exchange(int *q1, int *q2, int *q3)

void swap(int *pt1, int *pt2)

C語言 指標詳解(一)

一 指標是什麼?要知道什麼是指標,先來了解下指標的儲存和讀取。當我們在對程式編譯時,會為變數分配儲存單元。如我們定義int a 10 就是為a這個整型變數分配了4個位元組。記憶體區的每乙個位元組都有乙個編號,這就是 位址 相當於旅館中的房間號。在裡面存資料就相當於在這個房間中住旅客了。由於通過位址能...

C語言篇 指標(一)

指標就是位址,位址就是指標,指標變數就是存放記憶體單元編號的變數。1 基本型別的指標 2 指標和陣列 3 指標和函式 4 指標和結構體 5 多級指標 1 表示一些複雜的資料結構 2 快速的傳遞資料 3 使函式返回乙個以上的值 4 能直接訪問硬體 5 能夠方便的處理字串 6 是理解物件導向語言中引用的...

C語言指標初見(一)

最近一直在學習c語言指標,一直想總結一下,終於騰出來時間了,如果有寫錯的地方希望大家多多指正!乙個變數的位址稱為該變數的 指標 如果有乙個變數專門用來存放另一變數的位址 即指標 則它稱為 指標變數 指標變數就是位址變數,用來存放位址,指標變數的值是位址 即指標 定義乙個整型變數int a 定義乙個指...