一、陣列的基本概念
1. 什麼是陣列
陣列,從字面上看,就是一組資料的意思,沒錯,陣列就是用來儲存一組資料的
2. 陣列的特點
1> 只能存放一種型別的資料,比如int型別的陣列、float型別的陣列
2> 裡面存放的資料稱為「元素」
二、陣列的定義
1. 定義
想要定義乙個陣列,需要宣告兩點:
宣告陣列的型別
宣告陣列的元素個數(需要多少儲存空間)
2. 格式
元素型別 陣列名[元素個數];
比如:
int a [3];
3. 初始化
1> 初始化方式
int a[3] = ;
int a[3] = ;
int a = ;
int a[4] = ;
2> 常見錯誤
int a;
int[4] a;
int a[b];
a = ;
a[4] = ;
4>一維陣列作為函式引數
陣列名代表著整個陣列的位址,如果一維陣列的名字作為函式實參,傳遞的是整個陣列,這樣形引數組修改時,實參陣列也同時被修改了。形引數組的元素個數可以省略。
三、二維陣列
1> 二維陣列的定義
其實二維陣列就相當於裝著一維陣列的一維陣列。
定義形式:
型別 陣列名[行數][列數]
例如:
int a[2][3]; // 共2行3列,6個元素
2>二維陣列的初始化
1>
按行進行初始化
int a[2][3] = , };
2>
按儲存順序進行初始化(先存放第1行,再存放第2行)
int a[2][3] = ;
3>
對部分元素進行初始化
int a[2][3] = , };
int b[3][3] = , , };
4>
如果只初始化了部分元素,可以省略行數,但是不可以省略列數
int a[3] = ;
int a[3] = , , {}};
寫在最後:
有些人可能想不明白,為什麼可以省略行數,但不可以省略列數。也有人可能會問,可不可以只指定行數,但是省略列數?其實這個問題很簡單,如果我們這樣寫:
int a[2] = ; // 錯誤寫法
大家都知道,二維陣列會先存放第1行的元素,由於不確定列數,也就是不確定第1行要存放多少個元素,所以這裡會產生很多種情況,可能1、2是屬於第1行的,也可能1、2、3、4是第一行的,甚至1、2、3、4、5、6全部都是屬於第1行的 C語言學習之陣列
一維陣列的定義方式 資料型別 陣列名 整型常量表示式 注意 方括號中只能是常量表示式,不能使用變數。常量表示式的值表示陣列最多能存放的元素的個數,也稱為陣列的大小 陣列所佔總位元組數 sizeof 資料型別 陣列大小 int k 5 float c k 不合法,k是變數 define m 20 in...
IOS基礎 C語言學習之常量和變數
一 資料的儲存 1.資料型別 1 靜態資料 概念 靜態資料是指一些永久性的資料,一般儲存在硬碟中。儲存的時長 計算機關閉之後再開啟,這些資料依舊還在 2 動態資料 概念 動態資料指在程式執行過程中,動態產生的臨時資料,一般儲存在記憶體中。儲存的時長 計算機關閉之後或者突然掉電時,這些臨時資料就會丟失...
IOS學習筆記之C語言學習基礎筆記(1)
1.編譯和鏈結 將程式轉化為機器可執行的 c語言分為三個步驟 a.預編譯。程式首先會交給預處理器,預處理器執行以 開頭的指令,然後給程式新增指令,或者修改指令。b.編譯。修改後的程式進入編譯器,編譯器會把程式翻譯成機器指令 也就是目標 但是這樣的程式還是不能執行的。c.鏈結。鏈結器把由編譯器產生的目...