Лекция 01. Тема Общая характеристика языков программирования высокого уровня


Пример 1. прототип void fun (int *first, int *second); обращение fun(&t, &t); т.е. имена first, second будут  альтернативными. Пример 2


Download 4.1 Mb.
Pdf ko'rish
bet38/57
Sana12.11.2023
Hajmi4.1 Mb.
#1767546
TuriЛекция
1   ...   34   35   36   37   38   39   40   41   ...   57
Bog'liq
Lektsii po YaP Lukinova 2 sem

Пример 1. прототип void fun (int *first, int *second);
обращение fun(&t, &t); т.е. имена first, second будут 
альтернативными.
Пример 2. обращение fun (&list[i], &list[j]); если i, j равны, то опять 
возникает совмещение имен.
Пример 3.
Procedure big;
Var global : integer;
Procedure small(var local: integer); 
begin ... end;
Begin
Small(global);
End;
Здесь возникает альтернативность между формальным параметром local 
Procedure small и глобальной для Procedure small переменной global.


5. Модель передачи по имени
Реализация режима ввода-вывода, но с особенностями. Особенности 
заключаются в следующем. Вид фактического параметра диктует выбор 
модели реализации. Если фактический параметр – скалярная величина, то 
передача равносильна передаче по ссылке. Если – константное выражение, то 
равносильна передаче по значению. Если фактический параметр выражение, 
содержащее переменную, то передача особая. Она характеризуется поздним 
связыванием, т.е. связывание формального параметра с фактическим 
произойдет не в момент вызова процедуры, а в момент присваивания 
формальному параметру конкретного значения или ссылки на него. 
Например, пусть фактический параметр – элемент массива, ясно, что 
индексное выражение может изменяться во время выполнения программы 
между моментами обращения к этому параметру и не один раз. Поэтому и 
связь должна быть в момент записи, динамической. Это позволяет 
использовать формальный параметр для обращения к разным элементам 
массива. Преимущества передачи по имени – гибкость. Недостаток 
заключается в медленном выполнении этого механизма. 
Справедливости ради, следует заметить, что такая модель в силу 
сложности и неэффективности была реализована лишь в языке АЛГОЛ-60.

Download 4.1 Mb.

Do'stlaringiz bilan baham:
1   ...   34   35   36   37   38   39   40   41   ...   57




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling