C 함수 포인터 별칭 - sonkoni/Koni-Wiki GitHub Wiki
함수포인터 별칭은 일반적인 타입의 별칭과 형태가 조금 다르다
typedef 반환값자료형 (*함수포인터별칭)(매개변수자료형1, 매개변수자료형2, ...);#include <stdio.h>
typedef int (*CalcFunc)(int, int); // 함수포인터 별칭 정의
int Add(int a, int b) {
return a + b;
}
int Mul(int a, int b) {
return a * b;
}
typedef struct CalcBox {
CalcFunc exec;
int a;
int b;
} CalcBox;
int main(int argc, char *argv[]) {
CalcBox c = {Add, 10, 5};
printf("=> %d\n", c.exec(c.a, c.b));
// => 15
CalcFunc fp[2] = {Add, Mul};
printf("=> %d\n", fp[0](10, 5));
printf("=> %d\n", fp[1](10, 5));
// => 15
// => 50
return 0;
}