C++中指針函數(shù)與函數(shù)指針的使用
指針函數(shù)
指針函數(shù)是一個函數(shù),只不過指針函數(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ù)。
格式:
類型名 (*指針變量名) (函數(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é)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
淺析C/C++中動態(tài)鏈接庫的創(chuàng)建和調(diào)用
下面小編就為大家?guī)硪黄獪\析C/C++中動態(tài)鏈接庫的創(chuàng)建和調(diào)用。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考,一起跟隨小編過來看看吧2016-05-05
C語言數(shù)據(jù)結(jié)構(gòu)之堆排序的優(yōu)化算法
堆排序Heap?Sort就是利用堆進行排序的方法,下面這篇文章主要給大家介紹了關(guān)于C語言數(shù)據(jù)結(jié)構(gòu)之堆排序的優(yōu)化算法的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-04-04
C++實現(xiàn)LeetCode(119.楊輝三角之二)
這篇文章主要介紹了C++實現(xiàn)LeetCode(119.楊輝三角之二),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-07-07
C++容器適配與棧的實現(xiàn)及dequeque和優(yōu)先級詳解
這篇文章主要介紹了C++容器適配與棧的實現(xiàn)及dequeque和優(yōu)先級,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧2022-10-10

