您好,登錄后才能下訂單哦!
1.C語言中函數有自己特定的類型
2.函數的類型由返回值,參數類型和參數個數共同決定
3.C語言中通過typedef為函數類型重命名
4.函數指針用于指向一個函數
5.函數名是執行函數體的入口地址
6.可通過函數類型定義函數指針:Func Type* pointer
7.也可以直接定義:type (*pointer)(parameter list) pointer為函數指針變量名,type為指向函數的返回值類型,paramter list為指向函數的參數類型列表
#include <stdio.h> typedef int(FUNC)(int); int test(int i) { return i * i; } void f() { printf("Call f()...\n"); } int main() { FUNC* pt = test;//函數指針賦值 void(*pf)() = &f; pf(); (*pf)(); printf("Function pointer call: %d\n", pt(2)); }
函數和數組指針的定義區別為:數組指針用&取出地址,而函數用&和不用都表示函數的地址。
回調函數
1.回調函數是利用函數指針實現的一種調用機制
2.回調機制原理:調用者不知道具體事件發生的時候需要調用的具體函數,被調函數不知道何時被調用,只知道被調用后需要完成的任務,當具體事件發生時,調用者通過函數指針調用具體函數
3.回調機制的將調用者和被調函數分開,兩者互不依賴。
指針閱讀技巧解析
1.從最里層的圓括號中未定義的標識符看起
2.首先往右看,再往左看
3.當遇到圓括號或者方括號時可以確定部分類型,并調轉方向
4.重復2.3步驟,直到閱讀結束、
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。