vodi func() 와 void func(void)는 다르단다. 누가 그래? 컴파일러가요.. 웅? ㅋㅋ
함수 포인터 교안 만들다가, 아래와 같은 코드에서..
(1)과 (2)가 다른건 *** 에서 void가 추가되었다는 것 뿐이다.
// 상략...
void (*fp)() = NULL;
fp = bts;
hive(fp);
// 하략...
// 상략...
void (*fp)(void) = NULL; // *** void추가됨
fp = bts;
hive(fp);
// 하략...
추가하면 아래와 같은 경고가 난다.
이 경고의 의미는..
void (*fp)(void) 에 void func()를 집어넣었는데, 매개변수 목록이 다르다는 거지.
즉 ()라고 해줘야 하는데 왜 (void)라고 하냐 이거지.
보통 우리는 (1)과 (2)가 같다고 배우고,