C語言之指標與陣列

2021-09-10 17:47:01 字數 1046 閱讀 8186

前言

訪問陣列元素既可以使用陣列名加下標的方法,也可以使用指標的方法。但使用指標的方法可以使**更緊湊、更靈活、更高效。

一、幾個概念而陣列名代表陣列的起始位址,即陣列的指標。

說明:

二、指標訪問一維陣列

1、利用指標名構造指標表示式

例如:定義整型陣列a,int a[6];

2、利用指標變數訪問陣列

三、指標訪問二維陣列

二維陣列a[2][3]在計算機中的連續儲存位址如下:

將二維陣列a[2][3]看做一維陣列a[2],一維陣列中a[0]又是乙個一維陣列a[0][1]

a、a+1便是二維陣列a中的兩個行指標

a[i]<==>陣列首元素a[i][0]的位址,因此a[i]是乙個列指標

a[i]+j<==>a[i][j]的位址,即二維陣列的列指標;

由以上可知:

行指標變數:用以指向有n個元素組成的一維陣列的指標變數

四、指標與字串

1、例如:char *s=「c language」;,表示s是乙個指向字串的指標變數,把字串的首位址賦予指標s;

2、字串指標變數和字元陣列的區別:

例如:char *s; s=「c language」 可行;

char st[20];st=;不可行;

五、指標陣列

1、定義例如:==int *p[10];(注意與行指標變數的區別)==定義指標陣列p的每個元素都是能指向int型別資料的指標變數。

c語言之指標與陣列

考慮該例子 int calendar 12 31 該語句宣告了calendar是乙個陣列,該陣列擁有12個陣列元素,其中每個元素都是乙個擁有31個整型元素的陣列 而不是反過來理解 因此,sizeof calendar 的值是12 31 372與sizeof int 的乘積。如果calendar不是用...

C語言之辨別指標陣列與陣列指標

我們先來說一下指標陣列,顧名思義,這是乙個存放指標型別的陣列 從定義上來看 int p 3 沒有括號括起來它還是陣列這裡我還是寫乙個程式來理解一下 include intmain for int i 0 i 3 i return0 程式執行的結果 1 23指向指標的陣列 又稱行指標 如何定義 int...

了解C語言之指標與陣列

一 陣列的儲存與訪問 小結 a i 的內容是 a i a i 二 指向一維陣列的指標需要定義乙個基型別與陣列元素資料型別相同的指標變數。include define n 10 void main p,i p a a a i b p i c a p a d a i 2 設變數定義為 int a 4 p...