C++中指針函數(shù)與函數(shù)指針的使用
指針函數(shù)
指針函數(shù)是一個(gè)函數(shù),只不過(guò)指針函數(shù)返回的類型是某一類型的指針。
格式:
類型名* 函數(shù)名(函數(shù)參數(shù)列表)
使用:
/* * 指針函數(shù),返回int* 指針變量 */ int* add(int a, int b) { int *p; int c = a + b; p = &c; return p; } int main() { int* p; p = add(1, 4); printf("%d\n", *p); getchar(); return 1; }
函數(shù)指針
函數(shù)指針是指向函數(shù)的指針變量。所以函數(shù)指針其實(shí)是指針變量,只不過(guò)該指針變量指向函數(shù)。
格式:
類型名 (*指針變量名) (函數(shù)參數(shù)列表)
函數(shù)指針的用途:
- a.調(diào)用函數(shù)
- b.做函數(shù)的參數(shù)
調(diào)用函數(shù)使用:
/* * 函數(shù)指針,調(diào)用函數(shù) */ int fun1(int a, int b) { return a + b; } int main() { int(*p)(int, int); p = fun1; printf("%d\n", p(1, 5)); getchar(); return 1; }
函數(shù)參數(shù)使用:
/* * 函數(shù)指針,最為參數(shù) */ int fun2(int a, int b) { return a + b; } int fun3(int a, int b, int(*f)(int, int)) { return f(a, b); } int main() { printf("%d\n", fun3(1, 5, fun2)); getchar(); return 1; }
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
一起來(lái)看看C語(yǔ)言世界中的結(jié)構(gòu)體
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言世界中的結(jié)構(gòu)體,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-02-02C語(yǔ)言實(shí)現(xiàn)三子棋游戲含完整代碼
本文詳細(xì)講解了C語(yǔ)言實(shí)現(xiàn)三子棋游戲內(nèi)含完整代碼,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-11-11Vs2019+Qt+Opencv環(huán)境配置心得(圖文)
這篇文章主要介紹了Vs2019+Qt+Opencv環(huán)境配置心得(圖文),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08