多維陣列中下標的含義

2021-09-01 11:26:39 字數 1387 閱讀 4503

陣列名,代表陣列的第乙個元素存放的位址,對於int arr[10]; 來說,arr即指向arr[0]位址。

定義乙個多維陣列:

int matrix[3]

[4]=

;

陣列的元素是順序儲存的。把這個二維陣列理解為矩陣的話,matrix即3行4列的矩陣。(矩陣的概念只是更好的理解二維陣列,資料在記憶體中的實際儲存方式是由標準定義的)

1、int matrix[3][4] 這個多維陣列,可以把matrix陣列看作是乙個一維陣列,包含3個元素,每個元素又恰好是 「包含4個整型元素的陣列」

2、matrix陣列名,表示指向乙個 「包含4個整型元素的陣列」 的指標

matrix表示指向 「包含4個整型元素的陣列」 的指標,指向三行四列矩陣的第一行

matrix + 1指向三行四列矩陣的第二行

*(matrix + 1)指向矩陣的第二行的第乙個元素的位址。和matrix + 1相同

**(matrix + 1) + 2指向矩陣第二行的第三個元素的位址,即 &matrix[1][2]

#include

using

namespace std;

intmain()

; cout << matrix[1]

[0]<< endl;

//列印 4

cout <<

&matrix[1]

[0]<< endl;

//列印元素「4」所在的位址

cout << matrix +

1<< endl;

//指向matrix第二行的首位址,即matrix[1]的位址,結果同上

cout <<

*(matrix +1)

<< endl;

//指向matrix[1][0],結果同上

cout << matrix[1]

[2]<< endl;

//列印 6

cout <<

&matrix[1]

[2]<< endl;

//列印元素「6」所在的位址

cout <<

*(matrix +1)

+2<< endl;

//指向matrix第二行的首位址之後在偏移2位,即matrix[1]+2,即matrix[1][2]的位址,結果同上

cout <<*(

*(matrix +1)

+2)<< endl;

}

詳解Swift程式設計中下標的用法

訪問乙個集合的元素成員,在類中的序列和列表,結構和列舉都可以使用下標。這些下標用於儲存和使用索引來檢索值。陣列元素可使用如 somearray index 在 dictionary 例項及其後續成員元素的訪問也可以使用如 somedicitonary key 對於單一型別,下標範圍可以從單一到多個宣...

php 增加陣列下標 PHP獲取陣列下標的問題

php 獲取陣列指定值的位置或下標 如下 定義乙個陣列 array array 0 a 1 b 2 c 3 d 使用 array search 要搜尋的值 陣列 key array search b array key 1 key array search a array key 0 擴充套件資料 ...

awk陣列下標的字串化

好好努力,有乙個好的將來 日曆 var diarydays calendarbigborder calendartd calendarminput calendaryinput calendarmonthtitle calendarnow calendardaysat calendardaysun ...