版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、函數(shù)名與函數(shù)指針一通常的函數(shù)調(diào)用通常的函數(shù)調(diào)用一個(gè)通常的函數(shù)調(diào)用的例子:自行包含頭文件voidMyFun(intx)此處的聲明也可寫(xiě)成:voidMyFun(int)intmain(intargcargv[])MyFun(10)這里是調(diào)用MyFun(10)函數(shù)return0voidMyFun(intx)這里定義一個(gè)MyFun函數(shù)printf(“%d\n”x)這個(gè)MyFun函數(shù)是一個(gè)無(wú)返回值的函數(shù),它并不完成什么事情。這種調(diào)用函數(shù)的格式你應(yīng)
2、該是很熟悉的吧!看主函數(shù)中調(diào)用MyFun函數(shù)的書(shū)寫(xiě)格式:MyFun(10)我們一開(kāi)始只是從功能上或者說(shuō)從數(shù)學(xué)意義上理解MyFun這個(gè)函數(shù),知道MyFun函數(shù)名代表的是一個(gè)功能(或是說(shuō)一段代碼)。直到學(xué)習(xí)到函數(shù)指針概念時(shí)。我才不得不在思考:函數(shù)名到底又是什么東西呢?(不要以為這是沒(méi)有什么意義的事噢!呵呵,繼續(xù)往下看你就知道了。)二函數(shù)指針變量的聲明函數(shù)指針變量的聲明就象某一數(shù)據(jù)變量的內(nèi)存地址可以存儲(chǔ)在相應(yīng)的指針變量中一樣,函數(shù)的首地址也以
3、存儲(chǔ)在某個(gè)函數(shù)指針變量里的。這樣,我就可以通過(guò)這個(gè)函數(shù)指針變量來(lái)調(diào)用所指向的函數(shù)了。在C系列語(yǔ)言中,任何一個(gè)變量,總是要先聲明,之后才能使用的。那么,函數(shù)指針變量也應(yīng)該要先聲明吧?那又是如何來(lái)聲明呢?以上面的例子為例,我來(lái)聲明一個(gè)可以指向MyFun函數(shù)的函數(shù)指針變量FunP。下面就是聲明FunP變量的方法:void(FunP)(int)也可寫(xiě)成void(FunP)(intx)你看,整個(gè)函數(shù)指針變量的聲明格式如同函數(shù)MyFun的聲明處一樣
4、,只不過(guò)我們把MyFun改成(FunP)而已,這樣就有了一個(gè)能指向MyFun函數(shù)的指針FunP了。(當(dāng)然,這個(gè)FunP指針變量也可以指向所有其它具有相同參數(shù)及返回值的函數(shù)了。)三通過(guò)函數(shù)指針變量調(diào)用函數(shù)通過(guò)函數(shù)指針變量調(diào)用函數(shù)有了FunP指針變量后,我們就可以對(duì)它賦值指向MyFun,然后通過(guò)FunP來(lái)調(diào)用MyFun函數(shù)了??次胰绾瓮ㄟ^(guò)FunP指針變量來(lái)調(diào)用MyFun函數(shù)的:自行包含頭文件voidMyFun(intx)這個(gè)聲明也可寫(xiě)成:v
5、oidMyFun(int)看來(lái)與之前的代碼有點(diǎn)矛盾了,是吧!所以我說(shuō)嘛!請(qǐng)容許我暫不給你解釋?zhuān)^續(xù)看以下幾種情況(這些可都是可以正確運(yùn)行的代碼喲?。捍a之三:intmain(intargcargv[])MyFun(10)這里是調(diào)用MyFun(10)函數(shù)FunP=將MyFun函數(shù)的地址賦給FunP變量FunP(20)這是通過(guò)函數(shù)指針變量來(lái)調(diào)用MyFun函數(shù)的。return0代碼之四:intmain(intargcargv[])MyFun
6、(10)這里是調(diào)用MyFun(10)函數(shù)FunP=MyFun將MyFun函數(shù)的地址賦給FunP變量(FunP)(20)這是通過(guò)函數(shù)指針變量來(lái)調(diào)用MyFun函數(shù)的。return0真的是可以這樣的噢?。ㄍ郏≌媸且獣灥沽耍。┻€有吶!看代碼之五:intmain(intargcargv[])(MyFun)(10)看,函數(shù)名MyFun也可以有這樣的調(diào)用格式return0你也許第一次見(jiàn)到吧:函數(shù)名調(diào)用也可以是這樣寫(xiě)的?。。ㄖ徊贿^(guò)我們平常沒(méi)有這樣書(shū)寫(xiě)罷
7、了。)那么,這些又說(shuō)明了什么呢?呵呵!依據(jù)以往的知識(shí)和經(jīng)驗(yàn)來(lái)推理本篇的“新發(fā)現(xiàn)”,我想就連“福爾摩斯”也必定會(huì)由此分析并推斷出以下的結(jié)論:1.其實(shí),MyFun的函數(shù)名與FunP函數(shù)指針都是一樣的,即都是函數(shù)指針。MyFun函數(shù)名是一個(gè)函數(shù)指針常量,而FunP是一個(gè)函數(shù)數(shù)指針變量,這是它們的關(guān)系。2.但函數(shù)名調(diào)用如果都得如(MyFun)(10);這樣,那書(shū)寫(xiě)與讀起來(lái)都是不方便和不習(xí)慣的。所以C語(yǔ)言的設(shè)計(jì)者們才會(huì)設(shè)計(jì)成又可允許MyFun(1
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- excel函數(shù)名表
- c語(yǔ)言庫(kù)函數(shù)函數(shù)名 帶目錄+索引
- word中常見(jiàn)函數(shù)名稱(chēng)
- 關(guān)于指針函數(shù)的范例
- (八)冪函數(shù)指數(shù)函數(shù)與對(duì)數(shù)函數(shù)
- c++學(xué)習(xí)筆記(13)——利用對(duì)象、引用、指針調(diào)用虛函數(shù)
- oracle最全函數(shù)大全(分析函數(shù)-聚合函數(shù)-轉(zhuǎn)換函數(shù)-日期型函數(shù)-字符型函數(shù)-數(shù)值型函數(shù)-其他函數(shù))
- 函數(shù)與基本初等函數(shù)i
- 原函數(shù)與導(dǎo)函數(shù)的關(guān)系
- 函數(shù)與分析二次函數(shù)
- 指數(shù)函數(shù)與對(duì)數(shù)函數(shù)
- 二次函數(shù)與分段函數(shù)
- 函數(shù)與分析(二次函數(shù))
- 函數(shù)圖像與函數(shù)方程(學(xué)生版)
- 引函數(shù)微分與反函數(shù)微分
- 指數(shù)函數(shù)、對(duì)數(shù)函數(shù)、冪函數(shù)的圖像與性質(zhì)
- 指數(shù)函數(shù)、對(duì)數(shù)函數(shù)、冪函數(shù)單元復(fù)習(xí)與鞏固
- 專(zhuān)題二 函數(shù)概念與基本初等函數(shù) 第四講指數(shù)函數(shù)對(duì)數(shù)函數(shù)冪函數(shù)
- 函數(shù)與分析(一次函數(shù))
- php使用網(wǎng)絡(luò)函數(shù)與協(xié)議函數(shù)
評(píng)論
0/150
提交評(píng)論