詳解C語言初階之?dāng)?shù)組
1.數(shù)組
1.1數(shù)組的概念
所謂數(shù)組(array),就是具有相同數(shù)據(jù)類型的集合,存放的數(shù)據(jù)類型即數(shù)組本身的類型。
可以發(fā)現(xiàn)存儲的都是int型
補充 :調(diào)試小技巧
調(diào)試窗口 (按F5進行調(diào)試,打開菜單欄中的調(diào)試—窗口—監(jiān)視—隨便打開一個監(jiān)視窗口,輸入arr,將程序運行過arr的初始化即可觀察到arr內(nèi)部進行的初始化)
1.2數(shù)組的定義
a:完全初始化
數(shù)組內(nèi)部存儲了4個int類型的數(shù)據(jù),分別是1,2,3,4
b:不完全初始化
要求開辟四個空間存儲數(shù)據(jù),但只對第一個進行了初始化,默認(rèn)后面三個均為0
c:給定元素個數(shù)
給定元素個數(shù)后,可以是完全初始化,也可以是部分初始化。
d:不給定元素個數(shù)
自動給四個元素分配空間,實際上中括號內(nèi)還是4
注意:
a
:不給定元素數(shù)據(jù)一律視為完全初始化
b
:數(shù)組內(nèi)部元素個數(shù)至少為1
c
:[]內(nèi)部必須是整型常量(c90 標(biāo)準(zhǔn))——c99標(biāo)準(zhǔn)支持其他類型(linux),但我們主流仍舊采用c90標(biāo)準(zhǔn),同樣注意,我們一般所用的const定義的常量叫作常變量,本質(zhì)并不算常量,因此該類型數(shù)據(jù)同樣不能放在【】內(nèi)
1.3數(shù)組的下標(biāo)訪問
數(shù)組可以通過指針和下標(biāo)來進行訪問,這里我們來說下標(biāo)。
數(shù)組的第一個元素是【0】,即arr【0】代表第一個元素,arr【5】代表第六個元素
我們通常通過遍歷(即循環(huán))來對數(shù)組內(nèi)容進行打印,如果存儲的是字符串的話,那我們只需要%s(用來打印字符串)即可。
注意:
a
:通常情況下,數(shù)組名即arr是數(shù)組的首元素地址(因此對整型數(shù)組進行scanf循環(huán)輸入時,直接scanf(“%d” ,arr)即可,而不用加&符號),但sizeof(arr)中的arr卻代表整個數(shù)組的大小
b
:sz=整個數(shù)組的大小/一個元素的大小==元素個數(shù),arr【0】內(nèi)的0改為1/2/3.....均可,但一般采用0(數(shù)組至少一個元素),防止越界訪問(如一共只有四個元素,卻訪問了arr【5】)。
c
:對字符數(shù)組(存儲字符的數(shù)組)以%s進行輸出時,出現(xiàn)錯誤,因為%s用來輸出字符串類型,即遇到字符串磨人的‘\0'結(jié)束符后停止輸出,但字符數(shù)組中沒有默認(rèn)的'\0'結(jié)束符,輸出不能停止,超出數(shù)組空間后便出現(xiàn)錯誤,強制終止。
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
C++11 學(xué)習(xí)筆記之std::function和bind綁定器
這篇文章主要介紹了C++11 學(xué)習(xí)筆記之std::function和bind綁定器,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-07-07VSCode下.json文件的編寫之(1) linux/g++ (2).json中參數(shù)與預(yù)定義變量的意義解釋
這篇文章主要介紹了VSCode下.json文件的編寫之(1) linux/g++ (2).json中參數(shù)與預(yù)定義變量的意義解釋,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03C++ 模擬實現(xiàn)list(迭代器)實現(xiàn)代碼
這篇文章主要介紹了C++ 模擬實現(xiàn)list(迭代器)實現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下2017-05-05