函數指針是指向函數的指針變量,它可以指向任意類型的函數。在C語言中,定義函數指針的一般形式為:返回值類型 (*指針變量名)(參數列表)
。
以下是函數指針的定義和使用方法:
int (*p)(int, int);
表示p是一個指向返回類型為int,參數為兩個int類型的函數指針。
p = add;
這里add是一個函數,將add的地址賦值給p。
int result = p(3, 4);
這里通過函數指針p調用了add函數,并傳入了參數3和4。
完整的示例代碼如下:
#include <stdio.h>
int add(int a, int b) {
return a + b;
}
int main() {
int (*p)(int, int);
p = add;
int result = p(3, 4);
printf("result: %d\n", result);
return 0;
}
上述代碼定義了一個函數指針p,將add函數的地址賦值給p,并通過p調用add函數計算結果并輸出。輸出結果為7。