int main() { interface_func(3, real_func); return 1; } void interface_func(int a, void (*func)(int x)) { .... func(a); .... } void real_func(int x) { ... } 이렇게 하면 되는 군요... 생각보다는 쉬운 방법을 왜 생각하지 못했을까요...
함수 포인터를 인자로 넘기는 방법을 찾으셨네요. main 에서는 interface_func(3, real_func) 처럼 함수 이름을 그대로 넘기면 됩니다. 함수 이름이 주소로 바뀌어 전달되는 것이 C 의 규칙입니다.