36525

Параметры - переменные, параметры-значения.Механизм передачи в подпрограмму и из нее

Доклад

Информатика, кибернетика и программирование

Список формальных параметров необязателен и может отсутствовать. Если же он есть то в нем должны быть перечислены имена формальных параметров и их типы например: Procedure SB: Rel; b: Integer; с: Chr; Как видно из примера параметры в списке отделяются друг от друга точками с запятой. Несколько следующих подряд однотипных параметров можно объединять в подсписки например вместо Function F: Rel; b: Rel: Rel; можно написать проще: Function Fb: Rel: Rel; Операторы тела подпрограммы рассматривают список формальных параметров как...

Русский

2013-09-22

28.5 KB

0 чел.

Параметры - переменные, параметры-значения.Механизм передачи в подпрограмму и из нее.

Список формальных параметров необязателен и может отсутствовать. Если же он есть, то в нем должны быть перечислены имена формальных параметров и их типы, например:

Procedure SB(a: Real; b: Integer; с: Char);

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

Function F(a: Real; b: Real): Real;

можно написать проще:

Function F(a,b: Real): Real;

Операторы тела подпрограммы рассматривают список формальных параметров как своеобразное расширение раздела описаний:

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

Механизм замены формальных параметров на фактические позволяет нужным образом настроить алгоритм, реализованный в подпрограмме. Object Pascal следит за тем, чтобы количество и типы формальных параметров строго соответствовали количеству и типам фактических параметров в момент обращения к подпрограмме. Смысл используемых фактических параметров зависит от того, в каком порядке они перечислены при вызове подпрограммы. В нашем примере первый по порядку фактический параметр будет возводиться в степень, задаваемую вторым параметром, а не наоборот. Любой из формальных параметров подпрограммы может быть либо параметром-значением, либо параметром-переменной, либо, наконец, параметром-константой.

Определение формального параметра тем или иным способом существенно в основном только для вызывающей программы: если формальный параметр объявлен как параметр-переменная, то при вызове подпрограммы ему должен соответствовать фактический параметр в виде переменной нужного типа; если формальный параметр объявлен как параметр-значение или параметр-константа, то при вызове ему может соответствовать произвольное выражение. Для того чтобы понять, в каких случаях использовать тот или иной тип параметров, рассмотрим, как осуществляется замена формальных параметров на фактические в момент обращения к подпрограмме.

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

Если параметр определен как параметр-переменная, то при вызове подпрограммы передается сама переменная, а не ее копия (фактически в этом случае подпрограмме передается адрес переменной). Изменение параметра-переменной приводит к изменению фактического параметра в вызывающей программе.

В случае параметра-константы в подпрограмму также передается адрес области памяти, в которой располагается переменная или вычисленное значение. Однако компилятор блокирует любые присваивания параметру-константе нового значения в теле подпрограммы.

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


 

А также другие работы, которые могут Вас заинтересовать

64668. ОСОБЕННОСТИ РЕГУЛИРОВАНИЯ ТРУДА ЖЕНЩИН И ЛИЦ С СЕМЕЙНЫМИ ОБЯЗАННОСТЯМИ 74.96 KB
  К задачам работы относятся: рассмотрение общей характеристики института охраны труда женщин и лиц с семейными обязанностями: понятия, значения, источников правового регулирования; исследование правовых средств обеспечения безопасных условий труда женщин...
64669. Развитие и современное состояние мировой автомобилизации 239 KB
  В целях повышения уровня безопасности дорожного движения, информационного обеспечения и маршрутного ориентирования участников дорожного движения, оптимизации транспортных потоков, в соответствии с федеральным законодательством...
64672. Спрос и предложение 9.83 MB
  Цель данной курсовой работы - рассмотрение законов спроса и предложения с позиций экономической теории и в их взаимодействии. В соответствии с целью в работе поставлены следующие задачи: рассмотреть теоретические понятия спроса и предложения...
64674. Разработка и расчет реокардиографической системы 701.32 KB
  Наименование и область применения изделия. Наименование и обозначение изделия полное и сокращенное. Полное наименование документов и номера их позиций на основании которых планируется разработка изделия организации утвердившие эти документы и дата утверждения в том числе номер и дата рекомендации...
64675. Анализ рекламной деятельности СООО «ПП Полесье» и разработка путей и способов повышения ее эффективности 111.51 KB
  При правильной организации реклама очень эффективна и способствует быстрой бесперебойной реализации производимой продукции. Действенная эффективная реклама всегда результат тщательного планирования. Реклама является эффективным средством продвижения...