Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика - экзамен.docx
Скачиваний:
8
Добавлен:
16.04.2019
Размер:
59.07 Кб
Скачать

Пустой оператор

Пустой оператор не задает никаких действий, кроме определения своего преемника, которым является следующий по порядку оператор. Синтаксически непомеченному пустому оператору соответствует отсут­ствие каких-либо символов.

<пустой оператор>::=<пусто>

<пусто>::=

Пустой оператор – полноправный оператор и может присутст­вовать везде, где в синтаксическом определении фигурирует понятие оператор. Пустой оператор отделяется от других операторов точкой с запятой.

Пример. begin 22:; i:=0; end

Здесь записано три оператора: помеченный меткой 22 пустой оператор, оператор присваивания i:=0 и следующий за ним непомечен­ный пустой оператор.

Наиболее часто пустой оператор используется для того, чтобы пометить в программе некоторую точку, на которую должен осущест­виться переход, но где не нужно выполнять какие-либо действия.

Пример.

begin

1:;2:x:=0;

3:end;

Раздел меток

Любой оператор программы можно пометить (выделить), запи­сав перед ним через двоеточие метку. Оператор не может быть помечен более, чем одной меткой, а все метки операторов должны быть различны.

<помеченный оператор>::=<метка>:<непомеченный оператор>

Метка выполняет роль имени помеченного оператора, так что на такой оператор можно сослаться путем указания его метки в операторе перехода. В качестве метки в стандарте Паскаля используются целые без знака из диапазона [0..9999]. В языке OBJECT PASCAL в качестве метки можно использовать и имена.

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

<раздел меток>::=<пусто>|label <метка>{,<метка>};

В разделе меток объявляемые метки могут быть перечислены в произвольном порядке (независимо от порядка появления в разделе операторов). Любая метка в разделе меток может быть указана только один раз. Метка, объявленная в разделе описаний должна присутствовать в разделе операторов.

55.Модули в Турбо Паскале. Структура модуля.

Модуль – это автономно компилируемая программная еди­ница, включающая различные компоненты раздела описаний (типы, константы, переменные, процедуры и функции) и некоторые испол­няемые операторы.

В Delphi можно использовать модули двух типов:

  • стандартные, созданные разработчиками Delphi и включенные в среду программирования;

  • модули, создаваемые программистом.

Модуль состоит из следующих частей:

  • заголовок (Unit);

  • интерфейсная часть (Interface);

  • исполнительная часть (Implementation);

  • секция инициализации (Initialization);

  • секция завершения (Finalization);

  • ключевое слово end с точкой.

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

Заголовок начинается с ключевого слова Unit, за которым сле­дует имя. Имя модуля используется как имя файла, в котором записы­вается текст программы. По умолчанию Delphi присваивает модулю имя Unit1. Это имя можно изменить при сохранении файла.

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

За интерфейсной частью следует исполнительная часть, кото­рая начинается с ключевого слова Implementation, а завершается нача­лом секции инициализации, если она есть, или ключевым словом end. В этой секции определяются все процедуры и функции, методы классов и обработчики событий, объявленные в интерфейсной части. Дополнитель­но могут содержаться определения программных элементов, которые не объявлены в интерфейсной части. Такие программные элементы не дос­тупны для других программных единиц и используются только для выполнения каких-либо действий в данной секции.

Секция инициализации содержит операторы, которые выпол­няются только один раз при запуске модуля и осуществляют какие-либо вспомогательные действия: открывают файлы, инициализируют перемен­ные и т.п. Начинается эта секция ключевым словом Initialization. Эта секция необязательна.

Секция завершения содержит операторы, которые выполняются только один раз при завершении приложения. Обычно в этой секции удаляются временные файлы, записывается информация и т.п. Начинает­ся она ключевым словом Finalization. Эта секция необязательна, но она должна присутствовать, хотя бы пустая, если есть секция инициализации.