iT邦幫忙

2021 iThome 鐵人賽

DAY 12
0

Array

Array其實也是一種變數型態,不過是 nonbasic data type。

宣告陣列

data type array name[number of elements];

例如建立一個可以存五個數字的陣列

int numArray[5];。

要記住兩件非常重要的事 :

  1. 不論在什麼樣的陣列中、不論用甚麼程式語言,第一項一定是被記為第 0 項,因此如果我們要呼叫陣列中的第一項,就要寫numArray[0];若是第三項就是numArray[2]
  2. 就是在 C++ 中,我們宣告了這個陣列是int的話,裡面就只能存整數,不可以存小數或其他型態。

那當我們宣告了陣列後,這個陣列就會長的像是被劃了五格的 container,而這個陣列佔了 4 * 5 = 20 bytes 的記憶體空間,現在因為這個陣列是空的,所以我們印出來會顯示這個陣列第 0 項的地址,我們得在宣告的時候就設定好各項的值,或跑一個 for 迴圈才能把把值存進去,不過我通常使用第二種方法。

例如要讓各項皆等於0的話:

接下來是一個小筆記,也是老師有在影片中特別強調的:

如果我們今天要宣告一個陣列,不過這個陣列的長度並不是固定的,像我們在寫作業的時候就常常會有由測資給定陣列長度的情況,這時候不可以這樣寫:

而要:

這是宣告動態陣列 (dynamic array),屬於 pointer 的應用,至於 pointer 是甚麼之後再來介紹,現在先記得這個用法!

最後,要來說說二維陣列。

Two-dimensional array

基本上邏輯都與一維陣列是一樣的,我們就針對其宣告與應用來做介紹吧!

宣告

data type array name[rows][columns];

動態二維陣列
若是宣告 n * m 的陣列:

賦值
若使其各項都為 0:

接下來,就要來一點練習了!


上一篇
【Day 11】Variables 變數
下一篇
【Day 13】Array - Practice 1
系列文
C++ 三十天學習紀錄30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言