Головоломка о мульти исходной ссылке на файл в "TCPL" - PullRequest
0 голосов
/ 07 апреля 2019

Пока я читаю "TCPL", выходит загадка, я пытаюсь объяснить это, но не получилось.См. Изображение ниже: Страница 74 в "TCPL"
1. "getop.c" и "stack.c" оба включают "calc.h", а "getch.c" - нет.Тем не менее, в "calc.h" Он также объявляет функции int getch(void) и void ungetch(int), определенные в "getch.c".
2. Программа работает правильно.

Мой вопрос: Как работает файл заголовка "calc.h" установить соединение с исходным файлом "getch.c", а не include"..."?

1 Ответ

0 голосов
/ 07 апреля 2019

Определение функции также является объявлением.Поэтому нет необходимости в getch.c явно объявлять getch и ungetch.Хорошей идеей будет включить «calc.h», чтобы убедиться, что определение в «getch.c» соответствует объявлениям, используемым в других c-файлах

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...