C C 語言中的指標與陣列(一)

2022-08-14 05:39:08 字數 940 閱讀 2186

c/c++語言是大家公認的比較難學習的程式語言。而指標、陣列又是這門語言中的難點。筆者根據自己多年來對c/c++語言的理解。用最通俗易懂的語言為大家詳細講解這兩個知識點。希望對大家有所幫助。為還在c、c++門外的朋友提供一點幫助。

一、什麼是陣列

變數是記憶體中的一塊空間。也就是你平常說的2g記憶體中的一小小小塊地方。記憶體就像是乙個超市的存包櫃。有乙個乙個小格仔組成。(注:比喻不是十分準確。但能說明問題)乙個小格仔就是乙個變數。這個格仔有佔4個位元組(int型)的、8個位元組的、16個位元組的等等。如果你只帶了乙個包。那麼選擇乙個大小合適的格仔就行了(也就是相當於1個變數),如果你一人帶了15個大包。那你就得用15個大格仔(也就是相當於15個變數)。這15個大包有兩種存法:

1.零散的存放在櫃子不同的地方。

2.乙個挨著乙個放在櫃子的一行中。

如果是你你會怎麼放?可能所有人都會選擇第二種存法。為什麼?因為第二種存法容易找。容易記住。對!陣列的原理跟存包的原理是一樣一樣的。

陣列其實就是資料的組合。也就是一堆相同的變數(格仔)。這些變數按照乙個挨著乙個的方式存放在記憶體中。因為乙個挨著乙個所以可以通過編號(下標)直接訪問

哦!原來陣列就是一堆相連的、大小一樣記憶體組合啊。

陣列按維數分為:一維陣列(佔櫃子的一行)、二維陣列(占用櫃子幾行幾列)、三維陣列(占用多個櫃子的幾行幾列)、多維陣列等

陣列按型別分為:整形陣列、浮點型陣列、字元型陣列等。。(不同的型別也就是是指格仔的大小不同)

二、陣列的定義

一維陣列:int a[10]=; //表示有十個大小為4位元組格仔組合,裡面放了10個零蛋。

二維陣列:int b[2][3]=;//表示有2行3列的大小為4個位元組的格仔組合。裡面放了6個零蛋。

三維陣列:int c[2][3][4]=;//表示有2個3行4列的格仔組合。裡面放了24個零蛋。

通過以上解釋。你是否對陣列有了一定的了解了呢?

未完待續。。

C語言中的陣列指標與指標陣列

一 指標陣列和陣列指標的記憶體布局 指標陣列 首先它是乙個陣列,陣列的元素都是指標,陣列佔多少個位元組由陣列本身決定。它是 儲存指標的陣列 的簡稱。陣列指標 首先它是乙個指標,它指向乙個陣列。在32 位系統下永遠是佔4 個位元組,至於它指向的陣列佔多少位元組,不知道。它是 指向陣列的指標 的簡稱。下...

詳解C語言中的陣列指標與指標陣列

詳解陣列指標與指標陣列 陣列指標 一 區分 首先我們需要了解什麼是陣列指標以及什麼是指標陣列,如下圖 int p 5 int p 5 陣列指標的意思即為通過指標引用陣列,p先和 結合,說明了p是乙個指標變數,指向乙個大小為5的陣列。所以,int p 5 即為乙個陣列指標。int p 5 則是乙個大小...

C語言中指標陣列與陣列指標

1 指標陣列的實質是乙個陣列,這個陣列中儲存的內容全部是指標變數。2 陣列指標的實質是乙個指標,這個指標指向的是乙個陣列。1 int p 5 int p 5 int p 5 2 一般規律 int p p是乙個指標 int p 5 p是乙個陣列 3 如果核心和 結合,表示核心是指標 如果核心和 結合,...