指針C語言的重要概念和特色_第1頁
指針C語言的重要概念和特色_第2頁
指針C語言的重要概念和特色_第3頁
指針C語言的重要概念和特色_第4頁
指針C語言的重要概念和特色_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 指針:C 語言的重要概念和特色令小懷(定西工貿(mào)中等專業(yè)學(xué)校,甘肅隴西摘要:指針是C 語言的精髓部分,也是C 語言的重要特色。本文從指針的基本概念出發(fā),結(jié)合具體實例對指針的類型進(jìn)行了分析,并對指針在實際應(yīng)用中常出現(xiàn)的問題進(jìn)行了歸類總結(jié),希望對初學(xué)者理解“指針”這一重要概念有所幫助。關(guān)鍵詞:C 語言程序設(shè)計指針數(shù)組函數(shù)指針是C 語言中的精髓,它在C 語言中被廣泛地使用。指針是C 語言的一個重要概念,也是C 語言的一個重要特色。理解和運(yùn)用好指針可以靈活方便地處理程序中各種復(fù)雜問題,可以輕松完成其他高級程序設(shè)計語言不便完成的任務(wù)。一、指針的概念一個指針變量的值就是某個內(nèi)存單元的地址或稱為某內(nèi)存單元的

2、指針。指針的引入為系統(tǒng)存取數(shù)據(jù)提供“直接訪問”和“間接訪問”。有兩個上鎖且放著物品的盒子A 、B ,如果你有A 盒子的鑰匙,則可以直接打開A 盒子將物品取出;如果你有B 盒子的鑰匙,而A 盒子的鑰匙在B 盒子中,要想取出A 盒子中的物品,則必須先打開B 盒子,取出A 盒子的鑰匙,再打開A 盒子將物品取出。上面兩種情況就是直接訪問和間接訪問的概念。所謂間接訪問,是先訪問存放變量地址的存儲單元,得到該變量的地址,再對變量內(nèi)容進(jìn)行訪問。通過指針變量實現(xiàn)對變量的訪問方式,稱為間接訪問。首先要定義一個指針變量,然后將一個同類型變量的地址賦給該指針變量(這時我們稱指針變量指向該變量),這樣就可以進(jìn)行間接訪

3、問了。間接訪問的過程是:由指針變量得到變量的地址,根據(jù)該地址找到變量的存儲區(qū),再對該存儲區(qū)的內(nèi)容進(jìn)行存取,從而實現(xiàn)了對變量的間接訪問。指針變量是一種特殊變量。系統(tǒng)為指針變量分配一塊連續(xù)存儲單元不是供其存儲數(shù)據(jù),而是存儲內(nèi)存地址。因此,指針變量是存儲內(nèi)存地址的變量。在計算機(jī)中,把內(nèi)存區(qū)劃分為一個一個的存儲單元,每個單元為一個字節(jié)(8位),它們都有一個編號,這個編號就是內(nèi)存地址。注意:1. 程序中定義的每個數(shù)據(jù)在編譯后都占有各自的內(nèi)存區(qū)。2. 數(shù)據(jù)所占有的存儲單元個數(shù)是由其類型決定的。3. 首地址:第1個單元的地址。4. 表示地址的數(shù)與整數(shù)的區(qū)別。二、指針的類型1. 指向簡單變量的指針。指針?biāo)傅?/p>

4、數(shù)據(jù)類可以是簡單的數(shù)據(jù)類型。748100)*例:(1)int p ,i ;p=&i;意思是指針變量指向整型變量i (2)char p ,a ;p=&a;意思是指針變量指向字符型變量a (3)int p ,a 10;p=a;意思是指針變量指向數(shù)組a2. 指向數(shù)組的指針。指針?biāo)傅臄?shù)組既可以是一維數(shù)組,也可以是多維數(shù)組。例:main ()inta4=2,4,6,8;*int p ;for (p=a;p a+4;p+)printf ("%2d",p );分析:指針p 指向了a 數(shù)組的首地址,通過p+來訪問a 數(shù)組的每一元素。3. 指針數(shù)組。指針數(shù)組是一種特殊的數(shù)組

5、,它每個元素的類型都是指針類型(即地址),其他與一般數(shù)組相同。當(dāng)把某個量的地址放入某元素中后,即可通過該元素對相應(yīng)的量進(jìn)行間接訪問。數(shù)組元素是由指針變量組成的一種指針。定義如:int p 2;指針數(shù)組p 包含兩個元素,每個元素指向一個整型數(shù)據(jù)。例:main ()*intp 2,i ,a 22=1,3,5,7;for (i=0;i 2;i+)p=a;printf ("%dn" ,(p 1+1);分析:指針p 是一個數(shù)組,通過for 循環(huán)語句給指針數(shù)組中的每個指針變量賦值,p 1的初值為數(shù)組a 的第二行的首地址,*(p 1+1)便是元素a 11,因此程序輸出7。4. 指向指針的

6、指針。指針變量指向的是指針的地址,定義*如:int p 。例:main ()inta22=1,3,5,7;int p 2,q ,i ;for (i=0;i 2;i+)p=a;q=p;printf ("%dn" ,(q+1)+1);并不是進(jìn)行一種職業(yè)培訓(xùn),而是一種綜合思維的訓(xùn)練。我們應(yīng)當(dāng)正確認(rèn)識什么是程序,并學(xué)會一種思考問題的方法,初步掌握用C 語言來進(jìn)行程序設(shè)計。參考文獻(xiàn):1田祥宏,榮政.C 語言程序設(shè)計. 西安電子科技大學(xué)出版社,2007.2李麗娟.C 程序設(shè)計基礎(chǔ)教程.3Stephen Prata 著. 云巔工作室譯.C Primer Plus.4Kenneth A.R

7、eek 著. 徐波譯.C 和指針POINTERS ON C. 5Bryant02Bryant 、O Hallaron. 深入理解計算機(jī)系統(tǒng)(Com -puter Systems:AProgrammer s Perspective ).*BEGIN x z y x z y END當(dāng)然還可以用流程圖表示,這里就不列舉了。五、結(jié)語在大學(xué)里,許多學(xué)C 語言的人,都有著不同的目的。有的人是認(rèn)真對待每一門所學(xué)的課程,包括C 語言,有的人是對程序設(shè)計有著濃厚的興趣,還有的人只是為了獲得學(xué)分而學(xué)習(xí)C 語言。這樣,一部分人會覺得C 語言容易學(xué),一部分人又會覺得C 語言難學(xué),還有一部分人會覺得C 語言容易學(xué),但是

8、不會編寫程序。這樣就導(dǎo)致了學(xué)習(xí)C 語言效果的差異。其實,學(xué)習(xí)C 語言133 如何在計算機(jī)教學(xué)中提高學(xué)生的創(chuàng)新思維姜巍娣(雙鴨山市師范學(xué)校,黑龍江雙鴨山摘要:創(chuàng)新是人類社會發(fā)展與進(jìn)步的永恒主題,創(chuàng)新教育是素質(zhì)教育的核心內(nèi)容。培養(yǎng)具有創(chuàng)新能力的創(chuàng)新型人才,已成為當(dāng)今乃至今后教育教學(xué)發(fā)展的人才目標(biāo)。本文闡述了通過樹立正確的教育理念、優(yōu)化育人環(huán)境、運(yùn)用激勵機(jī)制等途徑在計算機(jī)實訓(xùn)教學(xué)中培養(yǎng)學(xué)生創(chuàng)新能力的方法和途徑,對提高實訓(xùn)教學(xué)質(zhì)量具有一定的意義。關(guān)鍵詞:計算機(jī)實訓(xùn)創(chuàng)新能力培養(yǎng)科學(xué)的生命力在于創(chuàng)新,教育科學(xué)的生命力同樣在于創(chuàng)新,素質(zhì)教育的重點是培養(yǎng)學(xué)生的創(chuàng)新精神和實踐能力。計算機(jī)教學(xué)必須把創(chuàng)新能力的培養(yǎng)

9、作為首要任務(wù),在培養(yǎng)學(xué)生實踐能力的同時,更重要的是培養(yǎng)學(xué)生創(chuàng)新能力和計算機(jī)文化,這樣才能適應(yīng)計算機(jī)發(fā)展的需要。一、樹立正確的教育理念、提供創(chuàng)新的實踐舞臺中國教育改革和發(fā)展綱要明確指出:“中小學(xué)要由應(yīng)試教育轉(zhuǎn)向全面提高國民素質(zhì)的軌道,面向全體學(xué)生,全面提高學(xué)生的思想道德、文化科學(xué)、勞動技能和身體心理素質(zhì),促進(jìn)學(xué)生生動活潑地發(fā)展,辦出各自的特色。”1. 教師的創(chuàng)新理念是培養(yǎng)學(xué)生創(chuàng)新能力的首要條件。教師是創(chuàng)新教育的具體組織者和實施者,創(chuàng)新型教師是創(chuàng)新教育成功的關(guān)鍵,一個具有創(chuàng)新精神的教師,是學(xué)生學(xué)習(xí)的楷模。在實訓(xùn)教學(xué)過程中,要突出學(xué)生主體作用,注重培養(yǎng)學(xué)生積極主動的教學(xué)參與意識,引導(dǎo)他們開動腦筋,獨(dú)

10、立思考,要讓學(xué)生在探究和獲得知識的過程中,體驗學(xué)習(xí)的樂趣,真正成為學(xué)習(xí)的主人。2. 教師是保護(hù)學(xué)生創(chuàng)新能力發(fā)展的“監(jiān)護(hù)人”。分析:指針數(shù)組p 的各個指針變量指向數(shù)組a 的各行首地址,q 指向指針數(shù)組p 的首地址,(q+1)等同p 1,如此,(q+1)+1)便等同(p 1+1)也就是a 11,因此程序輸出7。5. 指向函數(shù)的指針。指針變量指向函數(shù)的首地址,然后通過該指針變量調(diào)用該函數(shù)。定義如:int (p )()。例:intmax (inta ,intb )return(a>b)?a :b );main ()intmax(int ,int );*155100)學(xué)生在求知的過程中屬于不成熟的

11、個體,在探索中出現(xiàn)這樣或那樣的錯誤是難免的,也是允許的。教師不要急于評價,出示結(jié)論,而應(yīng)幫助學(xué)生弄清出現(xiàn)錯誤的原因,從而讓他們以積極的態(tài)度去承認(rèn)并且改正錯誤。學(xué)生的自我評價能力較低,常常默認(rèn)教師的評價,而且常以教師的評價衡量自己在群體中的地位。同時,又常從成人的表情或語言判斷對自己的評價,評價有一定的片面性。因此,教師應(yīng)對學(xué)生的正確行為給予明確的贊揚(yáng),增強(qiáng)他們的自信心,使學(xué)生看到成功的希望。二、努力營造創(chuàng)新氛圍實訓(xùn)教學(xué)不只是對學(xué)生進(jìn)行單一訓(xùn)練的場所,而且是引導(dǎo)學(xué)生全面發(fā)展的場所。我們要遵循教學(xué)與學(xué)生個性差異相適應(yīng)的規(guī)律,注重學(xué)生的個性培養(yǎng),從學(xué)生的個性品質(zhì)出發(fā),循循善誘地培養(yǎng),營造創(chuàng)新教育的氛

12、圍。1. 營造“創(chuàng)新課堂”氛圍。尊重學(xué)生的人格,建立良好的師生關(guān)系,增加師生之間和學(xué)生之間的多向交流,讓學(xué)生的創(chuàng)新因子處于最佳的狀態(tài),在這個氛圍里,能夠有效地調(diào)動學(xué)生的學(xué)習(xí)積極性,促使他們主動探索,提高實訓(xùn)的效果。2. 挖掘創(chuàng)新能力訓(xùn)練內(nèi)容。計算機(jī)實訓(xùn)教學(xué),要結(jié)合職業(yè)教育的實際,在加強(qiáng)基礎(chǔ)知識和基本技能訓(xùn)練的基礎(chǔ)上,積極挖掘創(chuàng)新素材,開展豐富多彩的主題訓(xùn)練,發(fā)揮學(xué)生的想象力和創(chuàng)意,培養(yǎng)學(xué)生的創(chuàng)新能力。如Word 排版教學(xué),開展“教師節(jié)”、“班級小報”等創(chuàng)意排版訓(xùn)練;網(wǎng)頁制作教學(xué),讓學(xué)生進(jìn)行“美麗的家鄉(xiāng)”、“地方美食”等網(wǎng)頁創(chuàng)作。可通過有目的的主題訓(xùn)練,充分發(fā)揮學(xué)時常用結(jié)束標(biāo)志進(jìn)行判斷。三、指針

13、應(yīng)用中常見的錯誤1. 把數(shù)據(jù)賦給指針變量。指針在使用前必須進(jìn)行初始化,賦予指針的值必須是地址。例:main ()inti=6,p ;p=6;printf (" p=%dn ”,p );正確語句:p=&i;“&”是一個取變量地址的運(yùn)算符。2. 指針常量運(yùn)算錯誤。程序中常量指針是不能被修改的。典型有數(shù)組名指針常量和指向字符串常量的指針。例:main ()*int (p )();inta ,b ;p=max;scanf ("%d,%d",&a,&b);printf ("max=%dn" ,(p )(a ,b );分析:int (p )()表示定義了一個指向函數(shù)的指針變量,函數(shù)名max 代表了函數(shù)的入口地址,執(zhí)行p=max后,p 指向了函數(shù)*inta5=1,2,3,4,5,p ;p=a;printf ("%dn ”,(+a);正確語句:printf “(%dn ”,(+p);3. 指針賦值類型不一致。例:main ()*max ,(p )(a ,b )便是通過p 調(diào)用函數(shù)max 。6. 指向文件的指針。C 語言對文件的操作并不是直接通過文件名進(jìn)行的,而是根據(jù)文件名生成一個文件指針,通過該指針來對文件進(jìn)行操作. 定義如:FILE fP ;(fp 為文件指針,此時fp 不指向任何文件)。7. 指向

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論