Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Лекция 15. Передача указателей и массивов





 

Передача указателей и массивов

в качестве аргументов функций.

 

Чтобы передать функции указатель, необходимо задать в списке формальных параметров параметр типа указатель. Фактическим параметром для него будет адрес объекта.

Пример.

#include <iostream.h>

void f(int *j); // параметр- указатель j на целое число

void main()

{ int i;

f(&i); // аргумент-указатель на целое число i

cout << i;

}

void f(int *j);

{ *j = 100;

}

В результате переменная i получит значение 100.

Если аргументом функции является массив, то при вызове такой функции ей передается только адрес первого элемента массива.

Существует два способа объявления формального параметра, который принимает в качестве значения указатель на массив.

1). Формальный параметр можно объявить как массив, тип и размер которого совпадет с типом и размером фактического массива.

 

Пример.

.

#include <iostream.h>

void display (int mas[10]);

void main()

{ int t[10], i;

for (i=0; i<10; i++)

t[i] = i;

display(t); // передаем функции массив

}

void display (int mas[10])

{ int i;

for (i=0; i<10; i++)

cout << mas[i] << “ “;

}

 

Несмотря на то, что формальный параметр mas объявлен как целочисленный массив, компилятор автоматически преобразует его в указатель на целое число.

2). При передаче функции массива её формальный параметр можно объявить как указатель. Этот вариант чаще всего используется профессиональными программистами.

void display (int *mas) // указатель на целое число

{ int i;

for (i=0; i<10; i++) cout << mas[i] << ‘ “;

}

Такой способ передачи параметра-массива основывается на том факте, что указатели можно индексировать.

Итак, если массив используется в качестве аргумента функции, то функции передается адрес этого массива. Это означает, что код функции может изменить реальное содержимое массива, используемого при вызове функции.







Date: 2015-12-12; view: 411; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию