指向一維陣列元素的指標

2022-08-30 04:00:15 字數 505 閱讀 5119

char型別的變數要占用1位元組,所以p+1代表p的值加1;float型別的變數占用4位元組,所以p+1代表p的值加4。

從這一點,也可以很好地說明為什麼指標一定要分型別,不同型別的指標,p+1的含義是不一樣的。

1 // 定義乙個int型別的陣列

2 int a[4] = ;

3 4 // 定義乙個int型別的指標,並指向陣列的第0個元素

5 int *p = a;

6 7 int i;

8 for (i = 0; i < 4; i++)

引用乙個陣列元素可以有兩種方法:

1.下標法: 如a[i]

2.指標法: 如*(p+i) 或 *(a+i)

如果乙個函式的形參型別是乙個陣列,呼叫函式時,你可以傳入陣列名或者指標變數;

1 void change(int b)

如果乙個函式的形參型別是乙個指標變數,呼叫函式時,你可以傳入陣列名或者指標變數。

1 void change(int *b)

指向陣列元素的指標

乙個變數有位址,乙個陣列包含若干元素,每個陣列元素都在記憶體中占用儲存單元,它們都有相應的位址 指標變數既然可以指向變數,當然也可以指向陣列元素 把某一元素的位址放到乙個指標變數中 所謂陣列元素的指標就是陣列元素的位址 定義乙個指向陣列元素的指標變數的方法,與以前介紹的指向變數的指標變數相同 例如 ...

指向二維陣列元素的指標變數

1 指向陣列元素的指標變數 例1.有乙個3x4的二維陣列,要求用指向元素的指標變數輸出二維陣列各元素的值.編寫程式 1 include 2 intmain 3 5int p 6for p a 0 p a 0 12 p a 0 代表列指標的起點,p依次指向下乙個元素 712 printf 4d p 1...

C指標 指向陣列的指標和指向陣列內部元素的指標

int p 5 arr 這裡的 也可以不寫,因為陣列名本身就表示陣列的首位址 int p arr int p arr int p arr 0 上面三種宣告方式都是合法且等價的 int a 5 int p a 指向陣列元素的指標,用來訪問陣列內部的元素,單位長度是sizeof int int q 5 ...