복잡한 함수 포인터를 구경해보자.
대체 어디서 부터 어떻게 읽어야 할지 감도 안잡힌다. ㅋㅋ
char (*func(char **buf, char *(*strf[9])(void), int *pi))(unsigned short,unsigned (**)(const char *));
문자형 이중 포인터 buf를 첫 번째 인수로 취하고,
인수가 없으며 문자형 포인터를 리턴하는 함수를 포인트 하는 크기 9의 함수 포인터 배열을 두 번째 인수로 취하고,
정수형 포인터를 세 번째 인수로 취하며,
부호없는 16비트 정수를 첫 번째 인수로 취하며,
문자형 상수 지시 포인터를 인수로 취하고 부호없는 정수를 리턴하는 함수의 이중 포인터를 두 번째 인수로 취하며 문자형을 리턴하는 함수를 포인트하는 함수 포인터를 리턴하는 함수 func을 선언한다.