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 следит за тем, чтобы количество и типы формальных параметров строго соответствовали количеству и типам фактических параметров в момент обращения к подпрограмме. Смысл используемых фактических параметров зависит от того, в каком порядке они перечислены при вызове подпрограммы. В нашем примере первый по порядку фактический параметр будет возводиться в степень, задаваемую вторым параметром, а не наоборот. Любой из формальных параметров подпрограммы может быть либо параметром-значением, либо параметром-переменной, либо, наконец, параметром-константой.

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

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

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

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

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


 

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

28694. Февральская буржуазно-демократическая революция 1917 г. Установление двоевластия, его причины и сущность 13.63 KB
  Инициатива создания Советов исходила снизу от народа но позднее их возглавила социалистическая партия. Избранный Петроградский Совет возглавил систему Советов коте позже составили конкуренцию ВП. Советы возникали по всей стране в городах селах гарнизонах воинских частях на основе выборов проходивших на съездах Советов. Исполнитми органами Советов являлись испные комитеты волостные уездные губернские.
28695. I Всероссийский съезд Советов: состав и основные вопросы, рассмотренные на нем 11.63 KB
  I Всероссийский съезд Советов: состав и основные вопросы рассмотренные на нем. Важная роль в становлении Советского государства и государственного аппарата принадлежала Всероссийскому съезду Советов рабочих и солдатских депутатов. Съезд начал свою работу уже вечером 25 октября и провозгласил себя высшим органом власти в России. Съезд по расчетам большевиков должен был официально признать и легализовать захват власти Советами.
28696. Конец двоевластия и установление единовластия Временного правительства. Антинародная политика Временного правительства. Провозглашение России Республикой. Центральные и местные органы власти и управления 13.46 KB
  Конец двоевластия и установление единовластия Временного правительства. Антинародная политика Временного правительства. Центральные и местные органы власти и управления. На 1 съезде Советов рабочих и солдатских депутатов была принята резолюция о сотрудничестве с Временным праввом.
28697. Политическая и законотворческая деятельность Временного правительства по основным социально-политическим и экономическим проблемам страны 13.75 KB
  правво принимает ряд правовых актов значительно расширяющих демократиче права и свободы граждан. В марте принимается постановление О кооперативных товариществах и их союзах возникающих без особого разрешения правитвенной власти. Вместе с тем правво отказывся от некотх чрезвычх мер запретив аресты без суда и ограничив число областей объявленных на военном положи постановле О лицах арестованных во внесудом порядке.
28698. Октябрьское вооруженное восстание 1917 г. и установление диктатуры пролетариата в России 13.87 KB
  Комитет состоял из представителей армии профсоюзов фабричнозаводских комитетов военных секций Советов и др. Важная роль в становлении Советского государства и государственного аппарата принадлежала Всероссийскому съезду Советов рабочих и солдатских депутатов. Ленин выдвинул идею диктатуры пролетариата в виде республики Советов. Новый госный строй России диктатуру пролетариата в виде республики Советов окончательно утвердила принятая 10 июля 1918 г.
28699. II-ой Всероссийский съезд Советов, его состав. Исторические декреты съезда о мире и земле 12.38 KB
  IIой Всероссийский съезд Советов его состав. Исторические декреты съезда о мире и земле. Важная роль в становлении Советского гос0ва и государственного аппарата принадлежала Всероссийскому съезду Советов рабочих и солдатских депутатов. Съезд больш.
28700. Слом старого государственного аппарата после Октябрьского вооруженного восстания1917г Упразднение органов буржуазного самоуправления. Роспуск Учредительного собрания 12.77 KB
  Руководство этим процессом осуществляли Всероссийские съезды Советов Петроградский ВРК ВЦИК НКВД и другие органы. когда Декретом ВЦИК и СНН упразднялись все сословия и сословные организации и учреждения. Председатель ВЦИК Я. Свердлов от имени ВЦИК и ЦК партии большевиков зачитал и предложил принять Декларацию прав трудящегося и эксплуатируемого народа.
28701. Военно-революционный комитет Петрограда и его роль в переходе власти к Советам. Создание милиции, судебных органов, ВЧК и Красной Армии, их компетенции и борьба против контрреволюции 14.26 KB
  Создание милиции судебных органов ВЧК и Красной Армии их компетенции и борьба против контрреволюции.10 вводится в действие приказ По рабочей милиции. НКВД и Наркомюст утвердили совместную инструкцию Об организации советской рабочекрестьянской милиции. Руководство органами милиции осуществляло Главное управление рабочекрестьянской милиции НКВД РСФСР.
28702. «Декларация прав трудящегося и эксплуатируемого народа», ее содержание и значение 12.2 KB
  Декларация прав трудящегося и эксплуатируемого народа ее содержание и значение. Декларация Прав Трудящегося И Эксплуатируемого Народа важнейший конституционный акт Советской республики законодательно закрепивший завоевания Октябрьской революции и провозгласивший основные принципы и задачи социалистического государства. Декларация была утверждена III Всероссийским съездом рабочих солдатских и крестьянских депутатов. Декларация состояла из четырех разделов.