什麼是指標?

2021-08-05 19:35:22 字數 1082 閱讀 1309

int *p, 在32

位的編譯器下,指標都是

4個位元組。指標身為變數,當然也可以進行正常的加減,但是它與普通變數的運算不同的是,指標的加減所加所減的是指標所指向的型別,比如下面這個例子

#include

// 關於指標型別的加減:

// pa + n = pa + sizeof(指標所指向的型別

)*nint main()

「&」為取位址符,因為指標所存的是變數的位址,所以要使用取位址符將指標所指向的變數位址取出來。

程式結果為:

pch =  0xbff9295f

pch =  0xbff92960

pa =  0xbff92960

pa =  0xbff92964

pd =  0xbff92950

pd =  0xbff92958

可以看出pch、pa、

pd在加一之後,都是增加了乙個他所代表的整個型別。

而對於指向陣列的指標,我們稱之為陣列指標,這裡尤為一點需要注意的是,陣列的陣列名代表陣列首個元素的位址。因此。在某些場合我們可以將陣列名當作乙個指標看待

例如:int main () ;

printf ("%d\n", *a);

printf ("%d\n", *(a+1));

printf ("%d\n", *(a+2));

printf ("%d\n", *(a+3));

return 0; }

但是,陣列名與指標也是有著差異的。

// 陣列指標與陣列的差異

1:陣列指標不能代替陣列名求陣列長度

int main5()

// 陣列指標與陣列的差異

2:陣列是乙個常量,不能改變

int main() ;

int *p = a;

int i;

for (i = 0; i < 5; i++)

for (i = 0; i < 5; i++)

return 0; }

所以,在使用陣列名作為乙個指標的時候,一定不要疏忽它與真正的指標之間的不同之處,不然計算機可是不會搭理你的哦。

什麼是野指標?

野指標的定義 野指標 不是null指標,是指向 垃圾 記憶體 不可用記憶體 的指標。人們一般不會錯用null指標,因為用if語句很容易判斷。但是 野指標 是很危險的,if無法判斷乙個指標是正常指標還是 野指標 有個良好的程式設計習慣是避免 野指標 的唯一方法。野指標形成的成因 一 指標變數沒有被初始...

什麼是野指標?如何避免野指標?

野指標不是 null指標,它是隨即指向一塊記憶體的指標。野指標是很危險的,會導致記憶體洩漏,if語句對它不起作用。導致野指標的原因有兩種 1 野指標指向了一塊沒有訪問許可權的記憶體。即指標沒有初始化 2 野指標指向了乙個已經釋放的記憶體。因為野指標是因為我們的不良程式設計習慣造成的,所以我們養成良好...

C語言高階,什麼是指標?

簡單的來說,指標就是記憶體單元的位址。它可能是變數的位址也可能是陣列的位址,亦或者是函式的入口位址。而儲存位址的變數就是指標變數,通常稱為指標。再簡單的來說也比較迷吧,舉個例子,去酒店住房間,酒店裡的每個房間會有乙個房間編號是不是,每個房間又有乙個房間名 在這裡插入描述 而你去住酒店的時候,前台會給...