✅ 목표 (Goal)

함수의 전방선언이란 무엇인가? 알아보자.

✅ 예제

이렇게 하면 해결된다.

#include <stdio.h>

void meow(); // (1)
void woof(); // (2)

void woof() { // 강아지,멍멍
    meow();
    printf("멍멍\\r\\n");
}

void meow() { // 고양이,야옹
    woof();
    printf("야옹\\r\\n");
}

int main() {
    woof();
    meow();
    return (0);
}

별거 아닌것 처럼 보이는데, 굉장히 중요하다. 잘 기억해놓자.

이렇게 함수를 앞에서 선언해 놓는 것을 전방 선언(Forwad Declration)이라고 한다.

(2)는 굳이 할 필요는 없는데, 개인적으로 다 적어놓는다.

왜냐면 main에서 woof(), meow() 순서가 바뀔수도 있기 때문이다.

✅ 전방 선언이란? (What is Forward declaration?)

전방선언이란 위와 같이 함수의 존재를 컴파일러에게 미리 알려주는 것이다.

전방 선언(forward declarations)이란 실제 식별자(Identifier)를 정의하기 전에 컴파일러에게 식별자의 존재를 미리 알리는 것이다.