函數(shù)存放在內(nèi)存的代碼區(qū)域內(nèi),它們同樣有地址,我們?nèi)绾文塬@得函數(shù)的地址呢? 定義一個(gè)指向函數(shù)的指針用如下的形式,以上面的test()為例: int (*fp)(int a);//這里就定義了一個(gè)指向函數(shù)的指針 函數(shù)指針不能絕對不能指向不同類型,或者是帶不同形參的函數(shù),在定義函數(shù)指針的時(shí)候我們很容易犯如下的錯(cuò)誤。 int *fp(int a);//這里是錯(cuò)誤的,因?yàn)榘凑战Y(jié)合性和優(yōu)先級來看就是先和()結(jié)合,然后變成了一個(gè)返回整形指針的函數(shù)了,而不是函數(shù)指針,這一點(diǎn)尤其需要注意! 下面我們來看一個(gè)具體的例子: #include <iostream> typedef定義可以簡化函數(shù)指針的定義,在定義一個(gè)的時(shí)候感覺不出來,但定義多了就知道方便了,上面的代碼改寫成如下的形式: #include <iostream>
|
正在閱讀:C/C++中函數(shù)指針的含義C/C++中函數(shù)指針的含義
2005-03-04 10:17
出處:PConline
作者:管寧
責(zé)任編輯:xietaoming
鍵盤也能翻頁,試試“← →”鍵
相關(guān)文章
302 Found
Powered by Tengine