내 프로그램에는 다음 파일이 있고 특정 기능 정의가있는 머리글과 기능 본문이있는 프로그램이 있습니다. 헤더 I 함수에 대한 포인터들의 어레이를 정의하고했다고포인터 배열을 사용하는 함수 호출
something.h
typedef struct _foo {
int id;
int lucky_number;
} foo;
typedef void (*pointer_fc)(foo *);
void first(foo *);
void second(foo *);
void third(foo *);
extern pointer_fc fc_bases[3];
something.c 란은
pointer_fc fc_bases[] = {first, second, third};
/* body of functions */
참고 something.c
프로그램에서 함수는 배열의 모든 요소와 연관됩니다.
특정 순간에 main.c
프로그램에서 3 가지 기능을 모두 호출해야한다고 가정 해 봅시다. 이, 어떻게 내 포인터를 extern 배열을 내 main.c
이이 함수를 호출 할 수 있습니다. 구조 foo
의 구조 포인터 변수로 다음 f1
선언되면
'fc_bases [n] (params);'('extern' decl에서는'3'이 필요 없습니다.) – WhozCraig
매개 변수가없는 함수에 관한 질문은 문제 자체와 관련이 없으므로 편집했습니다. – SealCuadrado