Методические указания к выполнению лабораторной работы " Указатели и массивы в Borland C++" для студентов специальности 0719




НазваниеМетодические указания к выполнению лабораторной работы " Указатели и массивы в Borland C++" для студентов специальности 0719
страница1/8
Дата публикации10.05.2013
Размер0.69 Mb.
ТипМетодические указания
shkolnie.ru > Информатика > Методические указания
  1   2   3   4   5   6   7   8


МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО

ОБРАЗОВАНИЯ РФ

ДАГЕСТАНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ

УНИВЕРСИТЕТ


КАФЕДРА ИНФОРМАЦИОННЫЕ СИСТЕМЫ В ЭКОНОМИКЕ

Методические указания к выполнению лабораторной работы

" Указатели и массивы в Borland C++"

для студентов специальности 0719

"Информационные системы в экономике"

МАХАЧКАЛА 1999

УДК 681.3

Методические указания к выполнению лабораторной работы "Указатели и массивы в Borland C++"

Махачкала, ДГТУ, 1999 г., с. 45

Методические указания дополняют лекционный материал и предназначены развивать теоретические и практические навыки решения задач с указателями, одномерными и многомерными массивами.

Указания предназначены для студентов дневной и заочной формы обучения по специальности 0719, изучающих дисциплину "Информатика".


Составители: ст. преподаватель Мусаев А.А.

Печатается по решению ученого совета Дагестанского государственного технического университета.
Наиболее важная причина необходимости изучения указателей – это то, что они (за исключением массивов) являются переменными, что позволяет обрабатывать любые типы данных более эффективно.

Указатели представляют собой одно из средств доступа к изменению данных. Так как указатели содержат адреса данных, то при поиске значений в памяти компьютера сокращается объем работы, и поэтому использование указателей позволяет написать более компактные и быстродействующие программы, чем те, которые могут быть получены другими способами, а иногда они дают единственную возможность выразить нужное действие.

В языке C++ существует настолько сильная взаимосвязь между указателями и массивами, так что их, на взгляд автора методического пособия, следует рассматривать одновременно.

Любую операцию, которую можно выполнить с помощью индексов массива, можно сделать и с помощью указателей. Вариант с указателями обычно оказывается более быстрым, но и несколько более трудным для непосредственного понимания, по крайней мере, для начинающего.
УКАЗАТЕЛИ
Как коды команд, так и данные в памяти компьютера хранятся по определенному адресу и занимают определенное число байтов. Адрес является порядковым номером ячейки памяти. При запуске программы переменные располагаются по определенным адресам и, по существу, каждая переменная в программе является меткой адреса памяти. Программируя на языке высокого уровня, таком как С++, не надо заботиться о фактическом адресе каждой переменной, - это входит в функции компилятора и исполняющей системы.

Объявление переменной в упрощенном виде имеет следующий синтаксис

тип _данных идентификатор [ =инициализирующее выражение] ;

Переменной после ее объявления отводится место в памяти, в которое явным или неявным образом записывается значение переменной. При отсутствии инициализации только глобальным переменным, объявленным вне тел всех функций, по умолчанию присваиваются нулевые значения. Используя в программе идентификатор (имя_ переменной), обращаемся значению переменной, а применяя операцию получения адреса &, - к тому месту в памяти, где хранится значение переменной. В последнем случае к месту в памяти обращаемся косвенным образом, но перемещаться по ней нет возможности, т.к. результат операции &имя _переменной не является переменной, и может быть использован только в выражении.

В языке есть возможность определять адрес памяти непосредственно с помощью т.н. "указателей". Указатель - это переменная, предназначенная для хранения адреса объекта (переменной или функции) некоторого типа _данных, по которому записывается значение этого объекта. Так как указатели являются переменными, для них действительны все правила именования обычных переменных, т.е. сначала необходимо объявить указатель, и только потом его использовать.
Синтаксис

тип _данных * идентификатор [ =инициализирующее выражение] ;

Создается переменная типа указатель с заданным именем (идентификатор), которая будет содержать адрес переменной заданного типа _данных (модификатор * не является частью имени переменной (идентификатора)!).

int *ptr, t1;

Объявлена переменная - указатель целого типа с именем ptr и переменная t1 целого типа, не являющаяся указателем, т.к. модификатор * воздействует только на один идентификатор. Комбинация *ptr имеет тип int, т.е. если ptr появляется в контексте *ptr , - то это эквивалентно переменной типа int.

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

Указатель типа void, называемый пустым указателем, может указывать на объект любого типа. Так как указателям пустого типа не соответствует никакой тип данных, то к ним нельзя применять арифметические операции.

Если переменная типа указатель определена, она должна на что-то указывать. Инициализирующее выражение (указательное _выражение) - это либо адрес какой-либо переменной (и в этом случае оно имеет вид &переменная), либо значение другого указателя. Указатель может быть инициализирован точно так же, как и любая другая переменная, хотя обычно единственными осмысленными значениями являются NULL или выражение, включающее адреса ранее определенных данных соответствующего типа.

int a=35, *aptr=&a; - помещаем адрес переменной a в переменную типа указатель aptr (используется инициализирующее выражение &a) .

Указатель содержит адрес некоторого байта. Меняя значение указателя, можно перемещаться по памяти, адресуясь к различным данным одной и той же структуры данных. Размер памяти, требуемый для адреса и формат этого адреса, зависит от компьютера и реализации компилятора языка. Указатели на один и тот же тип_ данных обычно имеют одинаковый размер и формат, но эти параметры неявно зависят от выбранной модели памяти, и явно зависят от модификаторов near, far, huge, определяющих формат указателя.

Рассмотрим операции, определенные над указателями.

1. Операция присваивания.
  1   2   3   4   5   6   7   8

Похожие:

Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания к выполнению лабораторной работы по дисциплине «Менеджмент»
Методические указания к выполнению лабораторной работы по дисциплине «Менеджмент» для студентов экономических и технических специальностей...
Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания к лабораторной работе 17 для студентов по специальности...
Изложены последовательность выполнения и варианты заданий для лабораторной работы по нечеткой логике
Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания по выполнению контрольной работы для студентов...
Методические указания по выполнению контрольной работы для студентов фэу специальности «Экономика»
Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания по выполнению дипломных проектов (работ) для...
Методические указания предназначены для студентов высшего профессионального образования очной и заочной формы обучения спец. Товароведение...
Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания к выполнению
Методические указания предназначены для студентов специальности 140604 всех форм обучения
Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания по выполнению курсовой работы Тема курсовой работы
Методические указания разработаны в соответствии с учебной программой дисциплины «Проектирование информационных систем» и предназначены...
Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания по выполнению контрольной работы Для самостоятельной работы
Бухгалтерский учет. Методические указания по выполнению контрольной работы для студентов 3 курса специальностей «Экономика и социология...
Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания и контрольные задания по дисциплине «Экономика организации»
Методические указания предназначены для выполнения контрольной работы по дисциплине «Экономика организации» для студентов заочной...
Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания по выполнению расчетных заданий и по анализу их результатов приложения
Методические указания разработаны в соответствии с рабочей программой дисциплины «Экология» для студентов-заочников специальности...
Методические указания к выполнению лабораторной работы \" Указатели и массивы в Borland C++\" для студентов специальности 0719 iconМетодические указания по выполнению контрольной работы Для студентов, обучающихся по направлению
Методические указания по выполнению контрольной работы утверждены на заседании Учебно-методического совета зфэи
Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2014
shkolnie.ru
Главная страница