首頁 - 網(wǎng)校 - 萬題庫 - 直播 - 雄鷹網(wǎng)校 - 團(tuán)購 - 書城 - 模考 - 學(xué)習(xí)通 - 導(dǎo)航 -
首頁網(wǎng)校萬題庫直播雄鷹網(wǎng)校團(tuán)購書城?論壇實(shí)用文檔作文大全寶寶起名
2015中考
法律碩士
2015高考
MBA考試
2015考研
MPA考試
在職研
中科院
考研培訓(xùn)
專升本
自學(xué)考試 成人高考
四 六 級(jí)
GRE考試
攻碩英語
零起點(diǎn)日語
職稱英語
口譯筆譯
申碩英語
零起點(diǎn)韓語
商務(wù)英語
日語等級(jí)
GMAT考試
公共英語
職稱日語
新概念英語
專四專八
博思考試
零起點(diǎn)英語
托?荚
托業(yè)考試
零起點(diǎn)法語
雅思考試
成人英語三級(jí)
零起點(diǎn)德語
等級(jí)考試
華為認(rèn)證
水平考試
Java認(rèn)證
職稱計(jì)算機(jī) 微軟認(rèn)證 思科認(rèn)證 Oracle認(rèn)證 Linux認(rèn)證
公 務(wù) 員
導(dǎo)游考試
物 流 師
出版資格
單 證 員
報(bào) 關(guān) 員
外 銷 員
價(jià)格鑒證
網(wǎng)絡(luò)編輯
駕 駛 員
報(bào)檢員
法律顧問
管理咨詢
企業(yè)培訓(xùn)
社會(huì)工作者
銀行從業(yè)
教師資格
營(yíng)養(yǎng)師
保險(xiǎn)從業(yè)
普 通 話
證券從業(yè)
跟 單 員
秘書資格
電子商務(wù)
期貨考試
國(guó)際商務(wù)
心理咨詢
營(yíng) 銷 師
司法考試
國(guó)際貨運(yùn)代理人
人力資源管理師
廣告師職業(yè)水平
衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格
基金從業(yè)資格
統(tǒng)計(jì)從業(yè)資格
經(jīng)濟(jì)師
精算師
統(tǒng)計(jì)師
會(huì)計(jì)職稱
法律顧問
ACCA考試
初級(jí)會(huì)計(jì)職稱
資產(chǎn)評(píng)估師
高級(jí)經(jīng)濟(jì)師
注冊(cè)會(huì)計(jì)師
高級(jí)會(huì)計(jì)師
美國(guó)注冊(cè)會(huì)計(jì)師
審計(jì)師考試
國(guó)際內(nèi)審師
注冊(cè)稅務(wù)師
理財(cái)規(guī)劃師
一級(jí)建造師
安全工程師
設(shè)備監(jiān)理師
公路監(jiān)理師
公路造價(jià)師
二級(jí)建造師
招標(biāo)師考試
物業(yè)管理師
電氣工程師
建筑師考試
造價(jià)工程師
注冊(cè)測(cè)繪師
質(zhì)量工程師
巖土工程師
注冊(cè)給排水
造價(jià)員考試
注冊(cè)計(jì)量師
環(huán)保工程師
化工工程師
暖通工程師
咨詢工程師
結(jié)構(gòu)工程師
城市規(guī)劃師
材料員考試
消防工程師
監(jiān)理工程師
房地產(chǎn)估價(jià)
土地估價(jià)師
安全評(píng)價(jià)師
房地產(chǎn)經(jīng)紀(jì)人
投資項(xiàng)目管理師
環(huán)境影響評(píng)價(jià)師
土地登記代理人
寶寶起名
繽紛校園
實(shí)用文檔
入黨申請(qǐng)
英語學(xué)習(xí)
思想?yún)R報(bào)
作文大全
工作總結(jié)
求職招聘 論文下載 直播課堂
您現(xiàn)在的位置: 考試吧 > 軟件水平考試 > 復(fù)習(xí)資料 > 程序員 > 正文

2015軟考程序設(shè)計(jì)和程序設(shè)計(jì)語言知識(shí)點(diǎn)輔導(dǎo)(2)

考試吧整理“2015軟考程序設(shè)計(jì)和程序設(shè)計(jì)語言知識(shí)點(diǎn)輔導(dǎo)(2)”供考生參考,更多軟件水平考試資訊和備考資料清關(guān)注考試吧軟件水平考試網(wǎng)。

  指針變量的應(yīng)用

  1.指向變目的指針變量

  當(dāng)指針變量指向某個(gè)對(duì)象(它的值不是NULL)時(shí),可以用* 指針變量引用指針變量所指向的對(duì)象。如語句:

  ip=&i;

  j=* ip;

  實(shí)現(xiàn)將指針變量ip所指變量的內(nèi)容(即變量i的內(nèi)容)賦給變量j.其中,賦位號(hào)右邊的*ip 表示引用中所指變量的內(nèi)容。上述賦值等價(jià)于:j=1;語句*ip=200;實(shí)現(xiàn)向指針變量ip所指變量(即變量i)賦值200.其中,賦值號(hào)左邊的。ip表示引用ip所指變量。上述賦值等價(jià)于i=200;

  一般地,記號(hào)“* 指針變量名”與指針變量所指變量的“變量名”等價(jià)。要特別注意:指針變量之間的賦值,指針變量所指向的變量之間的賦值,這兩種賦值在表示方法上的區(qū)別。如語句intpt=ip;使兩個(gè)指針變量intpt與ip指向同一個(gè)對(duì)象,或都不指向任何對(duì)象(如果ip的值為NULL)。而語句intpt=*ip;實(shí)現(xiàn)將ip所指變量的值賦給intpt所指的變量。這里要求中與intpt的值都不可以是NULL.通過指針變量引用它所指的變量,實(shí)際引用哪一個(gè)變量,取決于指針變量的值。改變指針變量的值,就是改變了它的指向。指針變量最主要的應(yīng)用有兩個(gè)方面:一是讓指針變量指向數(shù)組的元素,以便逐一改變指針變量的指向,遍歷數(shù)組的全部元素;二是讓函數(shù)設(shè)置指針形式參數(shù),讓函數(shù)體中的代碼通過指針形式參數(shù)引用調(diào)用環(huán)境中的變量或函數(shù)。

  為正確使用指針變量和它所指向的對(duì)象,特指出以下幾點(diǎn)注意事項(xiàng)

  (1)指針變量定義與引用指針變量所指對(duì)象采用相似的標(biāo)記形式(* 指針變量名),但它們的作用與意義是完全不同的。在指針變量定義中(如int *ip;),指針變量名之前的符號(hào)“*”說明其隨后的標(biāo)識(shí)符是指針變量名。如果指針變量定義時(shí)帶有初始化表達(dá)式,如int i, * ip=&i;初始化表達(dá)式的地址是賦給指針變量本身,而不是指針變量所指對(duì)象(實(shí)際上,在初始化之前,指針變量還未指向任何對(duì)象)。

  (2)通過指向變量i的指針變量ip引用變量三與直接按其名i引用變量i ,效果是相同的,凡直接按名可引用處,也可以用指向它的某個(gè)指針變量間接引用它。如有 int i, *ip=&i;則凡變量i能使用的地方,*ip一樣能用。

  (3)因單目運(yùn)算符* 、&、++和——是從右向左結(jié)合的。要注意分清運(yùn)算對(duì)象是指針變量、還是指針變量所指對(duì)象。如有

  int i,j,*ip=&i;

  語句 j=++*ip;是指 ip所指向的變量(變量i)的內(nèi)容加1,加1后的值賦給變量j.也就是說,++*ip相當(dāng)于++(*ip)。而語句j=*ip++;相當(dāng)于語句j=*ip; ip++;這是因?yàn)橄惹笾档氖潜磉_(dá)式 ip++,它的求值規(guī)則是,表達(dá)式的值為原來ip的位,然后ip的內(nèi)容增加了 1個(gè)單位。所以。 ip++的表達(dá)式值與*ip相同,并在*ip++求出表達(dá)式值的同時(shí),指針變量ip增加了1個(gè)單位。這樣,ip不再指向變量i,這種情況常用在指針指向數(shù)組元素的情況,在引用數(shù)組某元素之后,自動(dòng)指向數(shù)組的下一個(gè)元素。而語句j=(*ip)++;則是先引用ip所指向的對(duì)象,取ip所指向的對(duì)象的內(nèi)容賦給j,并讓中所指向的對(duì)象的內(nèi)容增加1個(gè)單位。

  指向一維數(shù)組元素的指針變量

  指針變量也能指向數(shù)組的元素。設(shè)有以下變量定義:

  int a[100],*p;

  賦值運(yùn)算p=&a[0]使p指向a[0].表示&a[0]還有更簡(jiǎn)潔的方法,即數(shù)組名a.按約定,一維數(shù)組名表達(dá)式的值為數(shù)組存儲(chǔ)區(qū)域的開始地址,即數(shù)組首元素的指針。對(duì)指向數(shù)組元素的指針允許作有限的運(yùn)算。設(shè)有代碼:

  int *p,*q,a[100] ;

  p=&a[10] ; q=&a[50] ;

  (l)指向數(shù)組元素的指針可與整數(shù)進(jìn)行加減運(yùn)算。利用數(shù)組元素在內(nèi)存中順序連續(xù)存放的規(guī)定,和地址運(yùn)算規(guī)則,有表達(dá)式 a+1為 a[1] 的地址,a+2為 a[2]的地址。一般地,表達(dá)式a+i為a[i]的地址。把這個(gè)結(jié)論應(yīng)用于指向數(shù)組元素的指針,同樣地成立。若p的值為a[0]的地址,則表達(dá)式p+i的值為a[i]的地址。或者說,p+i的值為指向a[i]的指針值。若p指向數(shù)組元素 a[10],則 p+n就表示指向數(shù)組元素 a[10+n],這里n是任意的整數(shù)表達(dá)式。

  一般地,當(dāng)指針變量指向數(shù)組a的元素時(shí),不論數(shù)組元素的類型是什么,指針和整數(shù)n進(jìn)行加減運(yùn)算時(shí),總是根據(jù)所指元素的數(shù)據(jù)存儲(chǔ)字節(jié)長(zhǎng)度 sizeof a[0] ,對(duì)n放大,保證加減n,使指針植向前或向后移動(dòng)n個(gè)元素位置。

  (2)當(dāng)兩個(gè)指針指向同一個(gè)數(shù)組的元素時(shí),允許兩個(gè)指針作減法運(yùn)算。其絕對(duì)值等于兩指針?biāo)笖?shù)組元素之間相差的元素個(gè)數(shù)。如表達(dá)式&a[4O]-&a[0]的值為40.

  (3)當(dāng)兩個(gè)指針指向同一個(gè)數(shù)組的元素時(shí),這兩個(gè)指針可以作關(guān)系比較(<,<=, ==,>,>=,!=)。若兩指針p和q指向同一個(gè)數(shù)組的元素,則p==q為真表示p,q指向數(shù)組的同一個(gè)元素;若p

  利用運(yùn)算符*可引用指針?biāo)笇?duì)象,*(a+i)表示引用a+i所指向的數(shù)組元素a[i] .這樣。(a+i)就是 a[i].對(duì)于指向數(shù)組元素的指針變量p,若p指向a[10],*(p+i)表示引用p+i所指向的數(shù)組元素 a[10+i].

  與用數(shù)組名和下橋引用數(shù)組元素的標(biāo)記法相一致,指向數(shù)組元素的指針變量也可帶下標(biāo)引用數(shù)組的元素,即*(p+i)也可寫成p[i] .但若p=&a[10],則p[i]引用的是a[10+i],p[2]引用的是a[8].

  綜上所述,引用數(shù)組元素有以下多種形式:

  (1)用數(shù)組元素的下標(biāo)引用數(shù)組元素,如 a[5].

  (2)利用數(shù)組名表達(dá)式的值是數(shù)組首元素指針的約定,可利用指針表達(dá)式間接引用數(shù)組元素,如*(a+i) .

  (3)利用指向數(shù)組元素的指針變量,用它構(gòu)成指向數(shù)組元素的指針表達(dá)式,并用該表達(dá)式引用數(shù)組元素。如*(p+i)或p[i].

  這里要強(qiáng)調(diào)指出用數(shù)組名a表達(dá)數(shù)組元素指針與用指向數(shù)組元素的指針p來表達(dá)數(shù)組元素的指針,在實(shí)際應(yīng)用上的區(qū)別:p是變量,其值可改變,如p++;而數(shù)組名a只代表數(shù)組a的首元素的指針,它是不可改變的,程序只能把它作為常量使用。

上一頁  1 2 

  相關(guān)推薦:

  2015年軟考軟件測(cè)評(píng)師基礎(chǔ)知識(shí)匯總

  2015年軟件水平考試網(wǎng)絡(luò)管理員復(fù)習(xí)筆記匯總

  各地2015年計(jì)算機(jī)軟考報(bào)名時(shí)間及報(bào)名入口匯總

文章搜索
軟件水平考試欄目導(dǎo)航
版權(quán)聲明:如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請(qǐng)注明出處。
Copyright © 2004- 考試吧軟件水平考試網(wǎng) All Rights Reserved 
中國(guó)科學(xué)院研究生院權(quán)威支持(北京)
在線模擬試題
考證通關(guān)殺器
考試最新資訊
學(xué)
一次通關(guān)技巧