c語言陣列名解釋

zw1996發表於2017-01-20

對於c語言中陣列名的操作我們應該是很陌生的吧,因為幾乎不會使用陣列名來對陣列進行操作,因為凡是可以使用陣列名操作的我們都可以使用&和*兩種操作符更簡單形象的進行一些操作。但是我們還是需要了解一下,關於陣列名的基本語法,不需要去使用,但是要看懂哈。

一維陣列;
陣列名首先是一個識別符號,是這個陣列的名字,同時又是一個指標,指向的是這個陣列首地址。
既然是指向首地址的指標,因此就有了第二種表示陣列元素的方法,使用陣列名;
a;代表指向陣列首地址的指標。則就是指向a[0]的地址,則與&a[0]等效;
a+i;則表示指向陣列的第i+1個元素。則與&a[i]等效;
*;是取值符。與&恰好相反;
a就相當於&a[0],而*(a+i)就表示a[i];
//記得*(a+i)要打括號,優先順序問題,如果沒打則表示的是a【0】+i的值;
看程式;
這裡寫圖片描述
這就是一維陣列中的陣列名。
再看一個陣列名的一個小程式;
這裡寫圖片描述
分析二維陣列的陣列名;從上面那個小程式可以看出陣列名存在巢狀關係的;根據這個來詳細分析二維陣列陣列名。
這裡寫圖片描述
就是根據一維陣列名一層一層的分分析就得到其餘多維陣列名的解釋,
二維是由一維巢狀。
三維就是由二維巢狀。

相關文章