IOS基礎 C語言學習之陣列

2021-06-28 12:29:08 字數 1950 閱讀 5032

一、陣列的基本概念

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.鏈結。鏈結器把由編譯器產生的目...