指標指向的是記憶體位址編號,記憶體位址編號指向的是對應的內容。
我們需要乙個變數,來儲存記憶體位址編號,這個變數的值是乙個記憶體位址編號,但是我們可以通過修改變數的值,來不斷的改變記憶體位址編號。
但是,我們如果需要改變該記憶體位址編號的值時,就需要對該記憶體位址編號的值進行修改,而不改變記憶體位址編號。
這裡我們看到,p是乙個變數,我們使用p來儲存變數a的記憶體位址編號,這是,我們使用*p對於這個變數進行賦值,那麼a的值是多少呢?
結果是11,因為我們使用*p賦值,就相當於a=11,賦值效果一樣的。
指標的指標,就是面對於指標的變數
我們說,指標的指標的時候,就有點不清楚了,到底怎麼區分指標和指標的指標呢?
我們這樣看就清楚一點,char*(*pr);*pr是乙個儲存的值為指標的變數,pr就是儲存上個變數記憶體位址編號的乙個變數。整合起來就是,
pr是乙個儲存的值為指標指向的記憶體位址編號的變數。
C語言指標的理解
什麼是指標?指標也是一種變數,存放的是某塊記憶體的位址。我們知道,記憶體可以理解為是按位元組被分割成若干塊的,每一位元組都對應著乙個編號,並且這些編號從小到大依次排列,這個編號就是它的位址,獨一無二,而指標變數中的值就是這些編號 例如如下 的結果 include include int main 這...
C語言指標的理解
include intmain int p1 2 p2 2 p3,p4,p5 宣告2個陣列指標,和3個普通指標 p1 arr 記住p1是陣列指標,是指向陣列的 printf d n p1 0 輸出陣列裡的第乙個元素 p1 指標自增,自增按陣列單位自增,這裡看成一維陣列的話,乙個陣列單位就是3,相當於...
C語言 指標的理解
要理解c語言 中指標的意思,最好的方法就是畫表。先從最簡單的 開始,用畫表來分析。例1 include studio.h intmain void 可以這樣畫表 因為0x1000位址裡存放的變數a是int型別,所以指向變數a的指標型別是int 同理,如果變數a的型別是unsigned char,則指...