#include "horse.h"
#include "donkey.h"
int main() {
neigh();
return (0);
}
#ifndef __HORSE_H__
#define __HORSE_H__
#include "donkey.h"
void cluck() { // 따가닥 따가닥 (1) 함수를 추가했다.
}
void neigh() { // 말, 히힝
hee_haw();
}
#endif
#ifndef __DONKEY_H__
#define __DONKEY_H__
#include "horse.h"
//void cluck(); // (1)
void hee_haw() { // 당나귀, 히호
cluck(); // horse의 따가닥 따가닥 함수를 호출하자.
}
#endif
heehaw()에서 cluck() 함수를 호출하는데,
cluck()함수의 정의가 없기 때문이다.
즉 전방 선언 문제이다.
#line 5 "E:\\\\my_vs\\\\c_training\\\\donkey.h"
// ★★★
void hee_haw() {
cluck(); // 여기서 문제가 발생한다!!
}
#line 12 "E:\\\\my_vs\\\\c_training\\\\donkey.h"
#line 5 "E:\\\\my_vs\\\\c_training\\\\horse.h"
void cluck() {
}
void neigh() {
hee_haw();
}
#line 15 "E:\\\\my_vs\\\\c_training\\\\horse.h"
#line 2 "E:\\\\my_vs\\\\c_training\\\\main.c"
int main() {
neigh();
return (0);
}