久久久国产精品秘人口麻豆|永久免费AV无语国产|人成电影免费中文字幕|久久AV嫩草影院2

    1. <dfn id="yitbn"><samp id="yitbn"><progress id="yitbn"></progress></samp></dfn>

          <div id="yitbn"></div>

          1. 首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載
            2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
            MPA考試 | 中科院
            四六級 | 職稱英語 | 商務(wù)英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
            新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學(xué)習(xí) | 法語 | 德語 | 韓語
            計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
            華為認(rèn)證 | Java認(rèn)證
            公務(wù)員 | 報關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
            報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
            人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
            駕駛員 | 網(wǎng)絡(luò)編輯
            衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護士
            會計從業(yè)資格考試會計證) | 經(jīng)濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務(wù)師
            注冊資產(chǎn)評估師 | 高級會計師 | ACCA | 統(tǒng)計師 | 精算師 | 理財規(guī)劃師 | 國際內(nèi)審師
            一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
            質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價師 | 土地估價師 | 巖土師
            設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項目管理師 | 土地登記代理人 | 環(huán)境影響評價師 | 環(huán)保工程師
            城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
            繽紛校園 | 實用文檔 | 英語學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲
            您現(xiàn)在的位置: 考試吧(eeeigo.com) > 計算機等級考試 > 計算機二級 > C語言 > 復(fù)習(xí)資料 > 正文

            二級C輔導(dǎo)教程及考點分析:第六章 指針

                2.指針變量的運算

                (1)賦值運算

                指針變量的賦值運算有以下幾種形式:
                ①指針變量初始化賦值,前面已作介紹。

                ②把一個變量的地址賦予指向相同數(shù)據(jù)類型的指針變量。例如:
                int a,*pa;
                pa=&a; /*把整型變量a的地址賦予整型指針變量pa*/

                ③把一個指針變量的值賦予指向相同類型變量的另一個指針變量。如:
                int a,*pa=&a,*pb;
                pb=pa; /*把a的地址賦予指針變量pb*/
                由于pa,pb均為指向整型變量的指針變量,因此可以相互賦值。

                ④把數(shù)組的首地址賦予指向數(shù)組的指針變量。
                例如: int a[5],*pa;
                pa=a; (數(shù)組名表示數(shù)組的首地址,故可賦予指向數(shù)組的指針變量pa)
                也可寫為:
                pa=&a[0]; /*數(shù)組第一個元素的地址也是整個數(shù)組的首地址,
                也可賦予pa*/
                當(dāng)然也可采取初始化賦值的方法:
                int a[5],*pa=a;

                ⑤把字符串的首地址賦予指向字符類型的指針變量。例如: char *pc;pc="c language";或用初始化賦值的方法寫為: char *pc="C Language"; 這里應(yīng)說明的是并不是把整個字符串裝入指針變量, 而是把存放該字符串的字符數(shù)組的首地址裝入指針變量。 在后面還將詳細(xì)介紹。

                ⑥把函數(shù)的入口地址賦予指向函數(shù)的指針變量。例如: int (*pf)();pf=f; /*f為函數(shù)名*/

                (2)加減算術(shù)運算

                對于指向數(shù)組的指針變量,可以加上或減去一個整數(shù)n。設(shè)pa是指向數(shù)組a的指針變量,則pa+n,pa-n,pa++,++pa,pa--,--pa 運算都是合法的。指針變量加或減一個整數(shù)n的意義是把指針指向的當(dāng)前位置(指向某數(shù)組元素)向前或向后移動n個位置。應(yīng)該注意,數(shù)組指針變量向前或向后移動一個位置和地址加1或減1 在概念上是不同的。因為數(shù)組可以有不同的類型, 各種類型的數(shù)組元素所占的字節(jié)長度是不同的。如指針變量加1,即向后移動1 個位置表示指針變量指向下一個數(shù)據(jù)元素的首地址。而不是在原地址基礎(chǔ)上加1。
                例如:
                int a[5],*pa;
                pa=a; /*pa指向數(shù)組a,也是指向a[0]*/
                pa=pa+2; /*pa指向a[2],即pa的值為&pa[2]*/ 指針變量的加減運算只能對數(shù)組指針變量進行, 對指向其它類型變量的指針變量作加減運算是毫無意義的。(3)兩個指針變量之間的運算只有指向同一數(shù)組的兩個指針變量之間才能進行運算, 否則運算毫無意義。

                ①兩指針變量相減
                兩指針變量相減所得之差是兩個指針?biāo)笖?shù)組元素之間相差的元素個數(shù)。實際上是兩個指針值(地址) 相減之差再除以該數(shù)組元素的長度(字節(jié)數(shù))。例如pf1和pf2 是指向同一浮點數(shù)組的兩個指針變量,設(shè)pf1的值為2010H,pf2的值為2000H,而浮點數(shù)組每個元素占4個字節(jié),所以pf1-pf2的結(jié)果為(2000H-2010H)/4=4,表示pf1和 pf2之間相差4個元素。兩個指針變量不能進行加法運算。 例如, pf1+pf2是什么意思呢?毫無實際意義。

                ②兩指針變量進行關(guān)系運算
                指向同一數(shù)組的兩指針變量進行關(guān)系運算可表示它們所指數(shù)組元素之間的關(guān)系。例如:
                pf1==pf2表示pf1和pf2指向同一數(shù)組元素
                pf1>pf2表示pf1處于高地址位置
                pf1<pf2表示pf2處于低地址位置
                main(){
                int a=10,b=20,s,t,*pa,*pb; 
                pa=&a;
                pb=&b;
                s=*pa+*pb;
                t=*pa**pb;
                printf("a=%d\nb=%d\na+b=%d\na*b=%d\n",a,b,a+b,a*b);
                printf("s=%d\nt=%d\n",s,t);
                }
                ......
                說明pa,pb為整型指針變量
                給指針變量pa賦值,pa指向變量a。
                給指針變量pb賦值,pb指向變量b。
                本行的意義是求a+b之和,(*pa就是a,*pb就是b)。
                本行是求a*b之積。
                輸出結(jié)果。
                輸出結(jié)果。
                ...... 
                指針變量還可以與0比較。設(shè)p為指針變量,則p==0表明p是空指針,它不指向任何變量;p!=0表示p不是空指針?罩羔樖怯蓪χ羔樧兞抠x予0值而得到的。例如: #define NULL 0 int *p=NULL; 對指針變量賦0值和不賦值是不同的。指針變量未賦值時,可以是任意值,是不能使用的。否則將造成意外錯誤。而指針變量賦0值后,則可以使用,只是它不指向具體的變量而已。
                main(){
                int a,b,c,*pmax,*pmin;
                printf("input three numbers:\n");
                scanf("%d%d%d",&a,&b,&c);
                if(a>b){
                pmax=&a;
                pmin=&b;}
                else{
                pmax=&b;
                pmin=&a;}
                if(c>*pmax) pmax=&c;
                if(c<*pmin) pmin=&c;
                printf("max=%d\nmin=%d\n",*pmax,*pmin);
                }
                ...... 
                pmax,pmin為整型指針變量。
                輸入提示。
                輸入三個數(shù)字。
                如果第一個數(shù)字大于第二個數(shù)字...
                指針變量賦值
                指針變量賦值
                指針變量賦值
                指針變量賦值
                判斷并賦值
                判斷并賦值 
                輸出結(jié)果
                ......

            上一頁  1 2 3 4 5 6 7 下一頁
            文章搜索
            計算機等級考試欄目導(dǎo)航
            版權(quán)聲明:如果計算機等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@eeeigo.com,我們將會及時處理。如轉(zhuǎn)載本計算機等級考試網(wǎng)內(nèi)容,請注明出處。