ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ПРОЦЕСС СОЗДАНИЯ ИСПОЛНЯЕМОГО ФАЙЛА.

· Исходный файл (текст программы на языке программирования Си) создается в редакторе системы программирования, например Borland C++.

· Расширенный исходный файл получается на этапе, предшествующем компиляции исходного файла, с помощью программы препроцессор (входит в компилятор). На входе препроцессора – исходный текст с директивами препроцессора (отмечены в исходном тексте символом #). На выходе – расширенный исходный файл, полученный в результате выполнения директив. В частности, препроцессор подключает к исходному файлу заголовочные файлы (имеют традиционно расширение .h), в которых содержатся константы функций, шаблоны структур, программные интерфейсы (прототипы) функций. Заголовочные файлы, входящие в стандарты языка Си, называются стандартными заголовочными файлами. Названия их являются зарезервированными именами (т.е. могут использоваться только для обозначения этих файлов). В конкретных компиляторах могут быть дополнительные заголовочные файлы. Кроме того, для связи с графическими функциями используются соответствующие графические заголовочные файлы.

· Объектный файл получается на этапе компиляции расширенного исходного файла с помощью программы компилятор. Он содержит двоичные машинные инструкции (объектные коды).

· Исполняемый файл (загрузочный модуль) получается на этапе компоновки объектных файлов с помощью программы линкер (редактор связи, компоновщик). Он содержит не только код объектного файла, но и коды подпрограмм из библиотечных файлов. Исполняемый файл готов к выполнению центральным процессором ЭВМ.


ПРОЦЕСС СОЗДАНИЯ ИСПОЛНЯЕМОГО ФАЙЛА.

    ПРОГРАММЫ,
ФАЙЛЫ   ОБРАБАТЫВАЮЩИЕ ФАЙЛЫ
ИСХОДНЫЙ ФАЙЛ f.c (язык Си) ОБРАБАТЫВАЕТ   ПРЕПРОЦЕССОР
 
 
 

 

   
РАСШИРЕННЫЙ ИСХОДНЫЙ ФАЙЛ (язык Си) ОБРАБАТЫВАЕТ   КОМПИЛЯТОР
 
 
 

 

   
ОБЪЕКТНЫЙ ФАЙЛ f.obj (язык двоичных кодов) ОБРАБАТЫВАЕТ ЛИНКЕР (РЕДАКТОР СВЯЗЕЙ, КОМПОНОВЩИК)
 
 
 

 

   
ИСПОЛНЯЕМЫЙ ФАЙЛ (ЗАГРУЗОЧНЫЙ МОДУЛЬ) f.exe (язык двоичных кодов)