Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основная книга по С++й.doc
Скачиваний:
16
Добавлен:
28.10.2018
Размер:
2.07 Mб
Скачать

Структура программы на языке Си

В языке Си исходные файлы бывают двух типов:

  • заголовочные, или h-файлы;

  • файлы реализации, или Cи-файлы.

Имена заголовочных файлов имеют расширение ".h". Имена файлов реализации имеют расширения ".c" для языка Си и ".cpp", ".cxx" или ".cc" для языка C++.

Заголовочные файлы содержат только описания. Прежде всего, это прототипы функций. Прототип функции описывает имя функции, тип возвращаемого значения, число и типы ее аргументов. Сам текст функции в h-файле не содержится. Также в h-файлах описываются имена и типы внешних переменных, константы, новые типы, структуры и т.п. В общем, h-файлы содержат лишь интерфейсы, т.е. информацию, необходимую для использования программ, уже написанных другими программистами (или тем же программистом раньше). Заголовочные файлы лишь сообщают информацию о других программах. При трансляции заголовочных файлов, как правило, никакие объекты не создаются.

Файлы реализации, или Cи-файлы, содержат тексты функций и определения глобальных переменных. Говоря упрощенно, Си-файлы содержат сами программы, а h-файлы - лишь информацию о программах.

Представление исходных текстов в виде заголовочных файлов и файлов реализации необходимо для создания больших проектов, имеющих модульную структуру. Заголовочные файлы служат для передачи информации между модулями. Файлы реализации - это отдельные модули, которые разрабатываются и транслируются независимо друг от друга и объединяются при создании выполняемой программы.

В общем случае программа на языке Си имеет следующую структуру:

  • раздел описания подключаемых библиотек;

  • функция main;

  • раздел описания процедур и функций.

Обязательным являются все разделы.

В разделе описания подключаемых библиотек после ключевого слова #include указывается имя подключаемого к программе библиотечного модуля. Имя модуля заключается в треугольные кавычки  <имя модуля>. В этих модулях содержатся необходимые программе стандартные и пользовательские процедуры и функции, например, «#include<stdio.h>». В этом примере приведен важнейший модуль, в котором находятся основные стандартные процедуры и функции ввода/вывода. В дальнейших примерах программ будем применять эту конструкцию.

Любая программа, каков бы ни был ее размер, состоит из одной или более "функций", указывающих фактические операции компьютера, которые должны быть выполнены. В языке Си  это функция main. Обычно функциям можно давать любые имена, но main  это особое имя; выполнение программы начинается сначала с функции main. Это означает, что каждая программа должна в каком-то месте содержать функцию с именем main. Для выполнения определенных действий функция main обычно обращается к другим функциям, часть из которых находится в той же самой программе, а часть  в библиотеках, содержащих ранее написанные функции.

В разделе описания процедур и функций описываются нестандартные (пользовательские) процедуры и функции. Процедура или функция – это подпрограмма, т.е. специальным образом оформленная часть программы, которая выполняет необходимое в программе действие. Подробнее о процедурах и функциях рассказывается в разделе 8.

Обобщая все вышесказанное, структура программы на языке Си в упрощенном виде выглядит следующим образом:

#include <модуль 1>

#include <модуль 2>

. . .

#include <модуль n> //список подключаемых модулей