物聯網/嵌入式工程師
重磅升級:新增硬件電路設計與實戰,讓你軟硬通吃,同級PK無敵!行業風口、政策傾斜,新晉熱門高薪不內卷!0基礎一站式就業完整路徑,搶占先發優勢!
前面的課程中,我們學習了變量,知道變量是用來存放數據的。

有的同學可能會寫這樣的一個程序
#include <stdio.h>
int main(int argc,char **argv)
{
int student1;
int student2;
int student3;
int student4;
int student5;
return 0;
}
似乎是沒有什么問題的。但是,班里有 50 個同學呢?或者更多同學呢?

顯然這是不太好的,雖然這樣的程序也可以工作,那應該怎么寫呢?
現在我們就來看看 C++ 中的數組
仍然以存儲50個同學的成績為例,我們要定義 存儲50個學生成績的變量,只要這樣定義就可以了。
#include <stdio.h>
int main(int argc,char **argv)
{
int a[50];
return 0;
}
那么我們應該如何訪問數組中的元素呢?這里我們要用到一個角標的概念,假如我們要給數組中第 1 個變量賦值為 98 分,我們應該這樣做。
#include <stdio.h>
int main(int argc,char **argv)
{
int a[50];
a[0] = 98;
return 0;
}
注意:C++ 的角標是從 0 開始的,我們日常生活中的“第一個”,對應 C++ 的數組角標實際上 0 。為了不至于混淆,也常常說“第 0 個”。
數組是一個整體,它的內存是連續的,也就是說,數組元素之間是相互挨著的,彼此之間沒有一點縫隙,一個 int[5] 的數組,在內存中的布局看起來像下圖一樣。

我們可以在聲明數組的時候,就給數組賦值
#include <stdio.h>
int main(int argc,char **argv)
{
int a[4] = {0, 1, 2, 3};
return 0;
}
如果不想指明數組的長度,可以不寫,這樣數組的長度就是給定的列表的長度。
#include <stdio.h>
int main(int argc,char **argv)
{
int a[] = {0, 1, 2, 3}; // 此處數組的長度就是 4
return 0;
}
你也可以只給部分元素賦值,當 {} 中的元素數量少于 [] 中定義的長度的時候,只給前面部分元素賦值,后面的未指定的元素,將被賦值為 0。
#include <stdio.h>
int main(int argc,char **argv)
{
int a[4] = {1, 2}; // 1, 2, 0, 0
return 0;
}
借用此特性,我們可以把數組的所有元素初始化為 0
#include <stdio.h>
int main(int argc,char **argv)
{
int a[4] = {0};
return 0;
}
請驗證,完成請求
由于請求次數過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報