




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、人民郵電出版社第七章 指 針人民郵電出版社7.1 指針的概念指針的概念7.2 指針操作符和指針表達(dá)式指針操作符和指針表達(dá)式7.3 指針和數(shù)組指針和數(shù)組7.4 字符指針與字符數(shù)組字符指針與字符數(shù)組7.5 指針數(shù)組指針數(shù)組7.6 指向指針的指針指向指針的指針人民郵電出版社7.1 指針的概念指針的概念77.11.1 1 指針和指針變量指針和指針變量 定義一個(gè)變量就意味著在內(nèi)存中給它分配一定的定義一個(gè)變量就意味著在內(nèi)存中給它分配一定的存儲(chǔ)單元,以備存儲(chǔ)這個(gè)變量的數(shù)值。存儲(chǔ)單元,以備存儲(chǔ)這個(gè)變量的數(shù)值。 圖7.1 指針概念示意圖 指針變量是一種特指針變量是一種特殊的變量,它在內(nèi)存中殊的變量,它在內(nèi)存中保
2、存的不是一般的數(shù)值,保存的不是一般的數(shù)值,而是另一個(gè)變量的地址。而是另一個(gè)變量的地址。 人民郵電出版社77.11.2 2 指針變量說(shuō)明指針變量說(shuō)明 像其它任何一種變量一樣,在像其它任何一種變量一樣,在C語(yǔ)言中使用語(yǔ)言中使用指針變量之前,也必須先要用說(shuō)明語(yǔ)句定義指針指針變量之前,也必須先要用說(shuō)明語(yǔ)句定義指針變量。變量。 指針變量定義語(yǔ)句的一般格式為指針變量定義語(yǔ)句的一般格式為 type *var_name; 其中其中type可以是任何可以是任何c或或c+的數(shù)據(jù)類型,它的數(shù)據(jù)類型,它表示指針?biāo)赶虻臄?shù)據(jù)的類型;表示指針?biāo)赶虻臄?shù)據(jù)的類型;var_name是指針變量名;是指針變量名;符號(hào)符號(hào)“*”是
3、定義指針變量的標(biāo)志。是定義指針變量的標(biāo)志。人民郵電出版社7.2 指針操作符和指針表達(dá)式指針操作符和指針表達(dá)式77.22.1 1 指針操作符指針操作符 語(yǔ)言中,對(duì)指針變量的操作,主要有兩個(gè)基語(yǔ)言中,對(duì)指針變量的操作,主要有兩個(gè)基本運(yùn)算(操作)符:本運(yùn)算(操作)符:“”和和“*”?,F(xiàn)分述如下?,F(xiàn)分述如下。 1. 操作符操作符 操作符是一個(gè)單目操作符,即它只要求一個(gè)操作符是一個(gè)單目操作符,即它只要求一個(gè)操作數(shù)。操作數(shù)。 2. 操作符操作符 * 操作符操作符*也是一個(gè)單目操作符,它返回的是操也是一個(gè)單目操作符,它返回的是操作數(shù)(指針變量)所指的地址的內(nèi)容。作數(shù)(指針變量)所指的地址的內(nèi)容。 人民郵電出
4、版社77.22.2 2 指針變量的初始化指針變量的初始化 與其它變量一樣,指針變量也可以初始與其它變量一樣,指針變量也可以初始化。指針變量初始化的一般形式為:化。指針變量初始化的一般形式為: 數(shù)據(jù)類型數(shù)據(jù)類型 *指針變量名指針變量名=內(nèi)存地址內(nèi)存地址人民郵電出版社77.22.3 3 指針運(yùn)算與指針表達(dá)式指針運(yùn)算與指針表達(dá)式 指針變量是可以運(yùn)算的。包含有指針的表達(dá)指針變量是可以運(yùn)算的。包含有指針的表達(dá)式,也是遵循一般表達(dá)式的規(guī)則的。但是,指針式,也是遵循一般表達(dá)式的規(guī)則的。但是,指針運(yùn)算有它自己的特殊的地方。運(yùn)算有它自己的特殊的地方。 1. 指針賦值指針賦值 指針賦值就是將一個(gè)指針(地址常數(shù)或指
5、針指針賦值就是將一個(gè)指針(地址常數(shù)或指針變量的值)賦給另一個(gè)指針變量。將其它任何類變量的值)賦給另一個(gè)指針變量。將其它任何類型的數(shù)據(jù)賦給指針變量都是錯(cuò)誤的。型的數(shù)據(jù)賦給指針變量都是錯(cuò)誤的。 人民郵電出版社2. 指針的算術(shù)運(yùn)算指針的算術(shù)運(yùn)算 指針有兩種算術(shù)運(yùn)算:加法和減法。指針有兩種算術(shù)運(yùn)算:加法和減法。 (1) 加一和減一運(yùn)算加一和減一運(yùn)算 最常見的指針?biāo)阈g(shù)運(yùn)算是指針的加一運(yùn)算和減最常見的指針?biāo)阈g(shù)運(yùn)算是指針的加一運(yùn)算和減一運(yùn)算。一運(yùn)算。 (2) 向指針加減任意整數(shù)向指針加減任意整數(shù) 指針不僅僅能進(jìn)行加一和減一運(yùn)算,也可以向指針不僅僅能進(jìn)行加一和減一運(yùn)算,也可以向指針加一個(gè)任意數(shù)或從指針減去一個(gè)
6、任意整數(shù)。指針加一個(gè)任意數(shù)或從指針減去一個(gè)任意整數(shù)。人民郵電出版社3. 3. 指針的比較運(yùn)算指針的比較運(yùn)算 兩個(gè)指針變量可以通過關(guān)系操作符進(jìn)行比兩個(gè)指針變量可以通過關(guān)系操作符進(jìn)行比較運(yùn)算。較運(yùn)算。 人民郵電出版社4. 4. 指針運(yùn)算的優(yōu)先級(jí)指針運(yùn)算的優(yōu)先級(jí) 在指針的應(yīng)用中,經(jīng)常會(huì)出現(xiàn)指針加一(減一)在指針的應(yīng)用中,經(jīng)常會(huì)出現(xiàn)指針加一(減一)運(yùn)算與運(yùn)算與* *運(yùn)算相結(jié)合的情況。例如表達(dá)式(其中運(yùn)算相結(jié)合的情況。例如表達(dá)式(其中p p為指為指針變量):針變量): *p+ *(p+) *(+P)這里需要注意的是:這里需要注意的是: + +,-和和* *是同等優(yōu)先級(jí)運(yùn)算和自右向左結(jié)合的原是同等優(yōu)先級(jí)運(yùn)
7、算和自右向左結(jié)合的原則;則; +p +p與與p+p+,-p p與與p p-是不同的。是不同的。人民郵電出版社7.3 指針和數(shù)組指針和數(shù)組77.33.1 1 指向數(shù)組的指針指向數(shù)組的指針 指針和數(shù)組之間有著非常密切的關(guān)系。這個(gè)關(guān)指針和數(shù)組之間有著非常密切的關(guān)系。這個(gè)關(guān)系就是,當(dāng)只用數(shù)組名而不用下標(biāo)和它的方括號(hào)系就是,當(dāng)只用數(shù)組名而不用下標(biāo)和它的方括號(hào)時(shí),這個(gè)數(shù)組名就變成了指向該數(shù)組第一個(gè)元素時(shí),這個(gè)數(shù)組名就變成了指向該數(shù)組第一個(gè)元素的指針。的指針。人民郵電出版社77.33.2 2 指針的下標(biāo)指針的下標(biāo) 指針可以象數(shù)組那樣使用下標(biāo),這進(jìn)一步表指針可以象數(shù)組那樣使用下標(biāo),這進(jìn)一步表明指針與數(shù)組的密切
8、關(guān)系。例如,明指針與數(shù)組的密切關(guān)系。例如,p p是一個(gè)數(shù)組是一個(gè)數(shù)組的指針,的指針,p pk則指向該數(shù)組的第則指向該數(shù)組的第k個(gè)元素。根據(jù)個(gè)元素。根據(jù)上面介紹的,上面介紹的,p pk與與*(p(p+k) )是等價(jià)的。是等價(jià)的。人民郵電出版社7.4 字符指針與字符數(shù)組字符指針與字符數(shù)組 字符串可以用字符型數(shù)組來(lái)表示。字符串可以用字符型數(shù)組來(lái)表示。 我們可以這樣定義(說(shuō)明)字符型指針變量我們可以這樣定義(說(shuō)明)字符型指針變量str1,str2: char *str1,*str2; 或進(jìn)行初始化:或進(jìn)行初始化: char *str1=string1; 同樣可以對(duì)字符指針進(jìn)行賦值,例如,同樣可以對(duì)字符
9、指針進(jìn)行賦值,例如,a為一為一字符型變量:字符型變量: str2=&a; 也可以對(duì)字符指針進(jìn)行運(yùn)算,例如:也可以對(duì)字符指針進(jìn)行運(yùn)算,例如: str1=str1+1;人民郵電出版社7.5 指針數(shù)組指針數(shù)組 將一些指針安排成數(shù)組那樣的結(jié)構(gòu),便構(gòu)成了指將一些指針安排成數(shù)組那樣的結(jié)構(gòu),便構(gòu)成了指針數(shù)組。指針數(shù)組中的每一個(gè)元素存儲(chǔ)的都是指針。針數(shù)組。指針數(shù)組中的每一個(gè)元素存儲(chǔ)的都是指針。使用指針數(shù)組時(shí),也要先進(jìn)行定義。指針數(shù)組定義語(yǔ)使用指針數(shù)組時(shí),也要先進(jìn)行定義。指針數(shù)組定義語(yǔ)句的一般形式是句的一般形式是 type *ptr_namesize; 其中其中type是指針?biāo)傅臄?shù)據(jù)類型,是指針?biāo)傅?/p>
10、數(shù)據(jù)類型,ptr_name是指是指針數(shù)組的名,針數(shù)組的名,*是指針符號(hào),是指針符號(hào),size是數(shù)組的長(zhǎng)度,即數(shù)是數(shù)組的長(zhǎng)度,即數(shù)組元素個(gè)數(shù)。組元素個(gè)數(shù)。 指針數(shù)組的賦值,與一般的下標(biāo)變量賦值語(yǔ)句基指針數(shù)組的賦值,與一般的下標(biāo)變量賦值語(yǔ)句基本一樣。例如,將變量本一樣。例如,將變量abc的地址賦給指針數(shù)組的元素的地址賦給指針數(shù)組的元素x5,賦值語(yǔ)句可以寫成,賦值語(yǔ)句可以寫成 x5 = &abc;人民郵電出版社圖7.3 一級(jí)指針和多級(jí)指針示意圖 如果指針變量中保如果指針變量中保存的是另一個(gè)指針變量存的是另一個(gè)指針變量的地址,這樣的指針變的地址,這樣的指針變量稱為指針的指針,也量稱為指針的指針,也叫做多級(jí)指針。多級(jí)指叫做多級(jí)指針。多級(jí)指針是一個(gè)指針鏈。相對(duì)針是一個(gè)指針鏈。相對(duì)于多級(jí)指針來(lái)說(shuō),以上于多級(jí)指針來(lái)說(shuō),以上各程序所用的指針可稱各程序所用的指針可稱為一級(jí)指針。圖為一級(jí)指針。圖7.3是一是一級(jí)指針和多級(jí)指針(圖級(jí)指針和多級(jí)指針(圖中表示的是二級(jí)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東協(xié)和學(xué)院《產(chǎn)能成本決策虛擬仿真實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 商丘職業(yè)技術(shù)學(xué)院《天然提取物與生物活性物質(zhì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 濟(jì)寧2025年山東濟(jì)寧市直教育系統(tǒng)校園招聘55人(曲阜師范大學(xué)站)筆試歷年參考題庫(kù)附帶答案詳解
- 揚(yáng)州環(huán)境資源職業(yè)技術(shù)學(xué)院《數(shù)據(jù)可視化與數(shù)據(jù)新聞》2023-2024學(xué)年第二學(xué)期期末試卷
- 海南體育職業(yè)技術(shù)學(xué)院《Java語(yǔ)言程序設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 瀘州職業(yè)技術(shù)學(xué)院《中國(guó)畫》2023-2024學(xué)年第二學(xué)期期末試卷
- 泰安2025年山東泰安岱岳區(qū)事業(yè)單位初級(jí)綜合類崗位招聘103人筆試歷年參考題庫(kù)附帶答案詳解-1
- 《負(fù)數(shù)的初步認(rèn)識(shí)》教學(xué)設(shè)計(jì)-2024-2025學(xué)年五年級(jí)上冊(cè)數(shù)學(xué)蘇教版
- 浙江商業(yè)職業(yè)技術(shù)學(xué)院《石油工程專業(yè)認(rèn)知專題》2023-2024學(xué)年第二學(xué)期期末試卷
- 河北科技大學(xué)《通信電路設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 塑膠件承認(rèn)書
- 物聯(lián)網(wǎng)項(xiàng)目實(shí)施進(jìn)度計(jì)劃表
- 學(xué)校校園安全巡邏情況登記表
- DLT5210.4-2018熱工施工質(zhì)量驗(yàn)收表格
- 中國(guó)-各省市地圖可編輯課件
- (兒科學(xué)課件)腎病綜合征
- 光纜線路工程段終版施工圖
- 礦井年度災(zāi)害預(yù)防和處理計(jì)劃
- 畢業(yè)論文-基于Java Web的模擬駕??荚囅到y(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 駱駝祥子1一24章批注
- 新部編人教版四年級(jí)下冊(cè)道德與法治全冊(cè)教案(教學(xué)設(shè)計(jì))
評(píng)論
0/150
提交評(píng)論