Два способа подстановки аргументов на место параметров
Автор: Основной язык сайта | В категории: Изучаем информатику
Параметр-значение сообщает подпрограмме «собственную» сменную. В начале выполнения вызова подпрограммы этой сменной присваивается значение аргумента. Соответствующим аргументом может быть произвольное выражение того же типа, что и тип параметра (или типа, совместного за присваиванием с типом параметра).
Примеры аргументов, которые є выражениями, нам знакомые из вызовов стандартных подпрограмм: sqrt(b*b-4*a*c) , chr (ord ( ‘ 0 ‘ ) +1) , writeln (x*x) и т.п..
В вызовах нашей процедуры min первые два аргументы тоже могут быть произвольными выражениями типа integer, например min (10+х,3*х,v), где х, v — имена целых сменных.
Этот способ передачи данных в подпрограмму называется подстановкой аргумента на место параметра по значению.
ПОДСТАНОВКА ЗА ССЫЛКОЙ
Параметр-сменная во время выполнения подпрограммы обозначает одну и ту же сменную, которую обозначает соответствующий ему аргумент, указанный в вызове. Чтобы обеспечить это, к памяти подпрограммы передается ссылка на эту сменную. Соответствующим аргументом может быть ім ‘я ЗМІННОЇТОГО же типа, что и у параметра.
Примеры аргументов, которые отвечают параметрам параметр-сменным: readln(a,b,c) или іпс(х), а также третий аргумент в вызовах нашей процедуры min.
Этот способ передач данных в подпрограмму называется подстановкой аргумента на место параметра за ссылкой.
ЧТО ВЫБИРАТЬ?
Если после вызова подпрограммы используется старое значение аргумента или аргументом может быть произвольное выражение, ему имеет відпо-;»;Яати параметр-значение.
Вспомогательные алгоритмы, или подпрограммы
Если после вызова подпрограммы должны использоваться новое значение аргумента, полученное при выполнении вызова, то параметр надо объявить как параметр-тінну.
Первое правило имеет исключения, связанные с массивами (см. раздел 7). Параметры х и у процедуры min (см. выше) иллюстрируют первое правило, параметр z — второе.
ПАРАМЕТРА-КОНСТАНТЫ
В языке Turbo Pascal есть еще один разновидность параметров — параметра-константы; они объявляются со словом const в начале. Аргументом для них может быть произвольное выражение того же типа, что и параметр.
Подстановка происходит так. Значение аргумента исчисляется и запоминается в участке памяти подпрограммы, которая вызывает (аналогично к параметров, а в подпрограмму, которая вызвана, передается ссылка на этот участок (как для параметр-сменных). Итак, этот механизм разрешает использовать аргументы-выражения и не требует копирования их значений к памяти вызова подпрограммы. Присваивание параметрам-константам запрещено; их обнаруживает транслятор.
Сочинение! Обязательно сохрани - » Два способа подстановки аргументов на место параметров . Потом не будешь искать!