2. Общая структура программы
15
2. Общая структура программы
Каждая программа на языке UniPascal состоит из заголовка (Program Heading),
списка используемых в программе внешних модулей (Uses Clause) и блока (Block).
Program =
ProgramHeading
 UsesClause
Block '.'.
Блок состоит из двух основных частей: раздел описания обрабатываемых данных
(Declarations) и раздел определения действий над данными. В разделе описания данных
даются все использованные в программе (процедуре или функции) идентификаторы.
Они могут быть метками, константами, типами, переменными, процедурами и
функциями. В отличие от стандартного языка Pascal в языке UniPascal порядок появления
разделов описания не имеет значения. Только описание каждого идентификатора
должно предшествовать его использованию в программе.
Block =
[ Declarations ]
'begin'
   Statement { ';'
   Statement }
'end'.
Declarations =
{ { LabelDeclaration } |
  { ConstDeclaration } |
  { TypeDeclaration }  |
  { VarDeclaration }   |
  { PFDeclaration } }  .
2.1. Заголовок программы
В заголовке программы указывается имя программы и имена стандартных
внешних файлов, с которыми она будет взаимодействовать. Стандартные внешние
файлы следующие:
ProgramHeading =
'program' Ident [ '(' IdentList ')' ] ';'.
Более подробное описание списка идентификаторов, заключенного в скобках
после имени программы (список внешних файлов) дается в п. 3.2.5.2.
2.2. Раздел описания меток
июбой оператор в программе можно маркировать, поставив перед ним через
двоеточие метку. В отличие от некоторых других языков программирования (например,
FORTRAN) каждая метка, прежде чем она будет использована в теле блока, должна
быть описана в разделе описания меток. Этот раздел начинается с зарезервированного
слова LABEL, за которым следует список используемых меток и точка с запятой. Метка
в Pascal-е представляет собой целое число без знака, лежащее в диапазоне от 0 до
9999. В UniPascal-е в качестве метки может выступать идентификатор.
Label =
Ident | IntConst.
LabelDeclaration =
'label' Label { ',' Label } ';'.
<<  <  GO  >  >>

Вернуться к началу сайта