Включение файлов
Для облегчения работы с наборами конструкций #DEFINE и описаний (среди прочих средств) в языке "с" предусмотрена возможность включения файлов. Любая строка вида
#INCLUDE "FILENAME"
заменяется содержимым файла с именем FILENAME. (Кавычки обя- зательны). Часто одна или две строки такого вида появляются в начале каждого исходного файла, для того чтобы включить общие конструкции #DEFINE и описания EXTERN для глобальных переменных. Допускается вложенность конструкций #INCLUDE. Конструкция #INCLUDE является предпочтительным способом связи описаний в больших программах. Этот способ гарантиру- ет, что все исходные файлы будут снабжены одинаковыми опре- делениями и описаниями переменных, и, следовательно, исклю- чает особенно неприятный сорт ошибок. Естественно, когда ка- кой-TO включаемый файл изменяется, все зависящие от него файлы должны быть перекомпилированы.
Строка управления компилятором вида
#INCLUDE "FILENAME"
приводит к замене этой строки на все содержимое файла с име- нем FILENAME. Файл с этим именем сначала ищется в справочни- ке начального исходного файла, а затем в последовательности стандартных мест. В отличие от этого управляющая строка вида
#INCLUDE <FILENAME>
ищет файл только в стандартных местах и не просматривает справочник исходного файла. Строки #INCLUDE могут быть вложенными.