C語(yǔ)言基礎(chǔ)知識(shí)簡(jiǎn)要回顧
基礎(chǔ)知識(shí)回顧
實(shí)現(xiàn)抽象數(shù)據(jù)類(lèi)型首先要考慮數(shù)據(jù)如何存儲(chǔ),其次在確定存儲(chǔ)方式的基礎(chǔ)上,相應(yīng)的操作如何實(shí)現(xiàn)。
2.1存儲(chǔ)
高級(jí)語(yǔ)言提供了如數(shù)組、鏈表、結(jié)構(gòu)體等數(shù)組織基本實(shí)現(xiàn)方式。不同方式有不同優(yōu)缺點(diǎn)
2.1.1 數(shù)組
- 最基本的數(shù)據(jù)類(lèi)型,相同數(shù)據(jù)類(lèi)型的有序集合。
- 數(shù)據(jù)具有隨機(jī)存儲(chǔ)優(yōu)點(diǎn)(數(shù)據(jù)A[i]存儲(chǔ)與下標(biāo)i無(wú)關(guān))
2.1.2 類(lèi)型定義
- **typedef **建立已經(jīng)定義好了的數(shù)據(jù)別名,從而使得代碼維護(hù)簡(jiǎn)單,具有更好的可讀性和移植性。
2.1.3 指針
- C語(yǔ)言中特色之一,使用指針可以對(duì)復(fù)雜數(shù)據(jù)進(jìn)行處理,對(duì)計(jì)算機(jī)內(nèi)存進(jìn)行分配控制,也可以實(shí)現(xiàn)函數(shù)調(diào)用返回多個(gè)值。
- 指針基本運(yùn)算
- 指針與數(shù)組區(qū)別
- 幾乎相同,數(shù)組名的值其實(shí)就是數(shù)組基地址,即第一個(gè)元素的地址,可以看成固定地址,可以看成一個(gè)指針常量
- 用指針實(shí)現(xiàn)內(nèi)存的動(dòng)態(tài)分配
2.1.4 結(jié)構(gòu)
- 結(jié)構(gòu)類(lèi)型允許將一些數(shù)據(jù)分量聚合成一個(gè)整體的數(shù)據(jù)類(lèi)型
- 結(jié)構(gòu)變量的使用 結(jié)構(gòu)成員操作符
.- 結(jié)構(gòu)變量名.成員名
- 結(jié)構(gòu)數(shù)組
- 結(jié)構(gòu)指針
-
*訪(fǎng)問(wèn) -
->訪(fǎng)問(wèn)
-
- 共用體
- 結(jié)構(gòu)變量的使用 結(jié)構(gòu)成員操作符
2.1.5 鏈表
- 基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)、可以克服數(shù)組需要預(yù)先知道數(shù)據(jù)大小的缺點(diǎn),充分利用內(nèi)存空間,實(shí)現(xiàn)靈活內(nèi)存管理
- 單向鏈表
- 結(jié)構(gòu)
- 操作
- 插入節(jié)點(diǎn)
- 刪除節(jié)點(diǎn)
- 遍歷
- 初始化
- 雙向鏈表
- 循環(huán)鏈表
2.2 操作實(shí)現(xiàn)
- 分支控制語(yǔ)句,循環(huán)控制語(yǔ)句和順序執(zhí)行結(jié)構(gòu)
- 模塊化
- 函數(shù)是模塊化設(shè)計(jì)的基本手段