回調函數
通過函數指針調用函數,而這個被調用的函數稱為回調函數
回調函數是C語言中一種強大的機制,允許將函數作為參數傳遞給其他函數,從而在特定時機由后者調用。它的核心在于函數指針的使用
以下是回調函數的使用例子
先創建好一個函數(calculate)用于接收函數指針,即用于調用的函數
在需要調用的時候,將需要調用的函數的地址傳遞給函數(calculate)
函數(calculate)會通過傳遞過來的函數地址,調用對應的函數并將這個函數計算出的結果返回
#include <stdio.h>
int calculate(int a, int b, int (*op)(int, int))
{ 通過函數指針接收函數的地址來調用對應的函數進行計算return op(a, b);
}
加法實現
int add(int a, int b) {return a + b;
}
減法實現
int subtract(int a, int b) {return a - b;
}
int main() {int x = 20, y = 8;printf("%d + %d = %d\n", x, y, calculate(x, y, add)); 調用calculate函數并將add函數的 地址傳遞過去printf("%d - %d = %d\n", x, y, calculate(x, y, subtract));return 0;
}