ВУЗ:
Составители:
Рубрика:
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова .
ров) – список типов объектов, представляющих собой входные данные функ-
ции:
СписокТиповФормПараметров::=Тип1, Тип2, … ТипN
В список типов формальных параметров можно также добавить и имена
объектов. Тогда конструкция объявления совпадает с заголовком самой функ-
ции.
Иногда возникают ситуации, когда необходимо изменить значение фак-
тических параметров внутри функции. Поэтому в некоторых языках суще-
ствует способ передачи параметров по ссылке на переменную, т. е. в функ-
цию передается не само значение переменной-параметра, а адрес памяти, по
которому находится эта переменная. Тогда работа внутри функции происхо-
дит непосредственно с этой областью памяти. В разных языках программиро-
вания параметр-ссылка обозначается по-разному. В языке С++ для обозначе-
ния ссылки используется знак '&', в C# – ref, в Pascal – var.
Например, требуется написать функцию, которая меняет местами значе-
ния двух переменных. Приведем два варианта функции:
1) параметры передаются по значению
void Change1 (int a, int b)
{
int t=a; a=b; b=t;
}
2) параметры передаются по ссылке
void Change2 (int& a, int& b)
{
int t=a; a=b; b=t;
}
При вызове первый вариант функции не решает требуемую задачу.
void main(void)
{
int x=10, y=40;
Change1(x,y); // результат - x=10, y=40
Change2(x,y); // результат - x=40, y=10;
. . .
}
Параметрами функции (входными и выходными данными) могут являть-
ся массивы и матрицы. Напомним, что массив – это набор переменных одина-
8
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова . ров) – список типов объектов, представляющих собой входные данные функ- ции: СписокТиповФормПараметров::=Тип1, Тип2, … ТипN В список типов формальных параметров можно также добавить и имена объектов. Тогда конструкция объявления совпадает с заголовком самой функ- ции. Иногда возникают ситуации, когда необходимо изменить значение фак- тических параметров внутри функции. Поэтому в некоторых языках суще- ствует способ передачи параметров по ссылке на переменную, т. е. в функ- цию передается не само значение переменной-параметра, а адрес памяти, по которому находится эта переменная. Тогда работа внутри функции происхо- дит непосредственно с этой областью памяти. В разных языках программиро- вания параметр-ссылка обозначается по-разному. В языке С++ для обозначе- ния ссылки используется знак '&', в C# – ref, в Pascal – var. Например, требуется написать функцию, которая меняет местами значе- ния двух переменных. Приведем два варианта функции: 1) параметры передаются по значению void Change1 (int a, int b) { int t=a; a=b; b=t; } 2) параметры передаются по ссылке void Change2 (int& a, int& b) { int t=a; a=b; b=t; } При вызове первый вариант функции не решает требуемую задачу. void main(void) { int x=10, y=40; Change1(x,y); // результат - x=10, y=40 Change2(x,y); // результат - x=40, y=10; . . . } Параметрами функции (входными и выходными данными) могут являть- ся массивы и матрицы. Напомним, что массив – это набор переменных одина- 8
Страницы
- « первая
- ‹ предыдущая
- …
- 6
- 7
- 8
- 9
- 10
- …
- следующая ›
- последняя »