在 C 語言中,函式指標是許多高階設計技巧的基礎,回呼函式 (Callback Function) 是其中最常見的應用之一。範例程式碼如下:
#include <stdio.h>
int square(int x) {
return x * x;
}
int doubleValue(int x) {
return 2 * x;
}
int negate(int x) {
return -x;
}
typedef int(*Processor)(int);
Processor handlers[] = {square, doubleValue, negate};
const char *modes[] = {"平方", "乘以2", "取負數"};
int process(int value, Processor func) {
return func(value);
}
int main() {
int num, choice, result;
printf("請輸入一個整數:");
scanf("%d", &num );
printf("請選擇操作方式 ( 1-3 ):\n");
for (int i = 0; i < 3; i++) {
printf("%d %s\n", i+1, modes[i]);
}
scanf("%d", &choice);
if (choice >= 1 && choice <=3) {
result = process(num, handlers[choice - 1]);
printf("處理結果:%d\n", result);
} else {
printf("輸入錯誤,請重新執行程式。\n");
}
return 0;
}
沒有留言:
張貼留言