Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Параметры подпрограмм






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

Передаваемые подпрограмме параметры описываются в списке формальных параметров заголовка подпрограммы, который имеет вид

 
 

 

 


В стандартном Паскале существует 2 вида формальных параметров: параметры-значения и параметры-переменные. В ТР, кроме этого, есть нетипизованные параметры-переменные и параметры-константы.

Описание секции параметров-значений:

 
 

 

 


Описание секции параметров-переменных:

 
 

 


Описание секции нетипизованных параметров-переменных:

 
 

 


Описание секции параметров-констант:

 
 

 

 

 


Следует обратить внимание на то, что при описании формальных параметров указывается имя типа. В последних версиях ТР, кроме имени типа, можно использовать конструкцию вида

 
 

 

 


Формальные параметры такого типа называются открытыми массивами

Описание типа здесь недопустимо. Если предполагается передавать параметры нестандартных типов, необходимо предварительно дать типам имена.

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

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.