Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 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; Нарушение авторских прав |