Иллюстрированный самоучитель по Turbo Pascal

Структура программы

Структура любой программной единицы (программы, процедуры или функции) должна быть такой:

<Объявление программной единицы>
{Раздел описаний}
BEGIN
{Раздел исполняемых операторов}
END <символ конца программной единицы>

Здесь:

  • "Объявление программной единицы> – заголовок программы, процедуры или функции;
  • заголовок программы можно опускать без каких-либо последствий для программы;
  • для процедур и функций наличие заголовка обязательно;
  • <символ конца программной единицы> – символ "." для программы или символ ";" – для процедуры и функции.

Любой из двух разделов программной единицы – раздел описаний или исполняемых операторов, или оба одновременно могут быть пустыми, т.е. не содержать никаких описаний или исполняемых операторов.

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

Последнее не относится к идентификаторам, определенным в стандартном модуле SYSTEM, т.е. имя этого модуля в предложении USES указывать не нужно. Более того, модуль SYSTEM считается предварительно объявленным, поэтому объявление:

Uses System;

Компилятор расценит как попытку двойного объявления модуля SYSTEM и даст соответствующее сообщение об ошибке. В разделе описаний объявляются идентификаторы типов, объектов, констант, переменных, а также метки, процедуры и функции. Описанию типов и объектов должно предшествовать зарезервированное слово TYPE, описанию констант – CONST, переменных – VAR и меток – LABEL, например:

type
DigType = set of '0'.. '9';
StrType = string [40];
const
N = 100;
EPS = 1e-9;
var
x,y:real;
st:StrType;
label
1b1, 1b2;

В отличие от стандартного Паскаля разделы TYPE, CONST, VAR, LABEL могут следовать друг за другом в любом порядке и встречаться в разделе описаний сколько угодно раз.

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

Структура программных библиотек (модулей) описана в гл.9.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.