指針函數
指針函數是一個函數,只不過指針函數返回的類型是某一類型的指針。
格式:
類型名* 函數名(函數參數列表)
使用:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
/* * 指針函數,返回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; } |
函數指針
函數指針是指向函數的指針變量。所以函數指針其實是指針變量,只不過該指針變量指向函數。
格式:
類型名 (*指針變量名) (函數參數列表)
函數指針的用途:
- a.調用函數
- b.做函數的參數
調用函數使用:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
/* * 函數指針,調用函數 */ 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; } |
函數參數使用:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
/* * 函數指針,最為參數 */ 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; } |
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對服務器之家的支持。如果你想了解更多相關內容請查看下面相關鏈接
原文鏈接:https://blog.csdn.net/woniu211111/article/details/78599517