0709 C语言常见误区----------函数指针问题
生活随笔
收集整理的這篇文章主要介紹了
0709 C语言常见误区----------函数指针问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.函數指針的定義
對于函數 void test(int a, int b){
//
}
其函數指針類型是void (* ) (int , int), 注意這里第一個括號不能少, 定義一個函數指針,void (* pfunc)(int , int) ,其中pfunc就是函數指針類型, 它指向的函數類型必須是返回值為void, 參數為兩個int的。
2.函數指針賦值
函數指針可以直接用函數名賦值,pfunc = test, 或者 pfunc = &test;
3.調用函數指針
pfunc(3, 4);
4.函數指針使用的場合
signal函數和pthread_create函數。
為簡便起見,一般用typedef將定義某一特定的函數指針類型, 如typedef void (* T) (int , int) ;?
5.例子
1 #include <stdio.h> 2 typedef void (* T)(int , int); 3 4 void test(int a, int b){ 5 printf("test :%d + %d = %d\n", a, b, a+b); 6 } 7 8 9 int main(int argc, char* argv[]){ 10 T pfunc = NULL; 11 pfunc = test; // pfunc = &test; 12 pfunc(3, 4); 13 return 0; 14 }
?
?
?
轉載于:https://www.cnblogs.com/monicalee/p/3834862.html
總結
以上是生活随笔為你收集整理的0709 C语言常见误区----------函数指针问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 草木本无意下一句是什么呢?
- 下一篇: 微软职位内部推荐-Software De