1. 程式人生 > 其它 >一維陣列和二維陣列中學習到的重要的點

一維陣列和二維陣列中學習到的重要的點

1.一維陣列名的作用:

(1)計算陣列佔用的記憶體空間

cout<<sizeof(arr1)<<endl;

(2)獲取陣列的首地址

cout<<arr1<<endl;

(3)獲取陣列第一個元素的首地址

cout<<&arr1[0]<<endl;

注意(2)(3)的區別,一個是獲取陣列首地址,一個時獲取陣列第一個元素的首地址,雖然他們的結果是一樣的,但是意義和寫法不一樣,一個有取地址符,一個沒有;不要搞混了

(4)善用除法,陣列的元素個數=陣列的總記憶體空間除以每個元素的記憶體空間

也就是sizeof(arr1)/sizeof(arr1[0])=陣列的元素個數

陣列的最後一個元素的索引就是,陣列的元素個數-1,也就是sizeof(arr1)/sizeof(arr1[0])-1

2.二維陣列名的作用

和一維陣列差不多

(1)計算陣列佔用的記憶體空間

int arr1[2][3];

cout<<sizeof(arr1)<<endl;

結果應該是24 ,因為6個int型元素 4 * 6=24

(2)獲取陣列的首地址

cout<<arr1<<endl;直接列印陣列名就可以獲取到陣列的首地址了

(3)陣列第一行佔用的記憶體,sizeof(arr1[0])

(3)陣列有幾行? 思路是除法: 陣列的總記憶體大小/陣列第一行的記憶體大小=行數

陣列有幾列,陣列第一行的記憶體大小/陣列每個元素的記憶體大小=列數

記得這種除法算行數和列數還有元素個數的思路!!!

記得這種除法算行數和列數還有元素個數的思路!!!

記得這種除法算行數和列數還有元素個數的思路!!!