關於二級指標的理解

2021-09-26 09:12:52 字數 411 閱讀 5059

#include

void main()

;charp;

int i;

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

}首先我們要明白,如果定義乙個字串陣列a[4],其實就是乙個一級指標,放的是第乙個字元的首位址,a+1放的就是第二個字元的首位址。

這個也不難理解,同理我們知道n是乙個二維指標n裡面放的是a[0]的位址,a[0]放的是第乙個字串裡面第乙個字元的首位址。而經過我的除錯,我也發現n+i放的就是n[i]的位址,這個應該容易理解。

所以我們要定義乙個p來接受,輸出的時候我們要注意一定要輸出p,因為這個是n[i]的,而裡面放的就是這段字元的首個字元的位址,用%s輸出就正確了。

新手,寫部落格為了見證自己的成長,也為了督促自己,有不對的地方,希望大家多多指正。

理解二級指標

我在一篇教程中看到下面這段,它描述指向指標的指標是如何運作的。引用文章相關段落如下 1 2 inti 5,j 6,k 7 int ip1 i,ip2 j 現在我們可以這麼寫 1 int ipp ip1 那麼現在指標 ipp 指向了 ip1,ip1 指向了 i。ipp 就是 ip1,ipp 就是 i,...

二級指標理解

1 先看一反例 目的 通過函式mymalloc改變指標p的值 include include void mymalloc char s 我想在函式中分配記憶體,再返回 void main 以上例子中,p實際還是null,p的值沒有改變,為什麼?答 我們的目的就是要改變指標p的值,因為p本身就是指標,...

二級指標的理解

今天看到一段關於二級指標的使用,如下 include int main 執行後的輸出結果如下 a 0xbfe9f968 b 0xbfe9f964 c 0xbfe9f964 c 0xbfe9f964 c 0xbfe9f968 c 12按照輸出理解,首先 c先寫成 c 的形式,c先指向b,然後此表示式可...