Студопедия Главная Случайная страница Обратная связь

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

Инициализация указателей. Инициализация указателей имеет две формы:





Инициализация указателей имеет две формы:

 

type * имя указателя = инициирующее выражение;

type * имя указателя (инициирующее выражение);

В качестве инициирующего выражения может быть:

1) явно заданный адрес участка памяти: type * имя = (type *) 0x158e0ffc;

2) выражение, возвращающее адрес объекта с помощью операции '&':

type count=; type_1* iptr = (type_1*) & count;

3) указатель, имеющий значение:

char ch = '+', *R = & ch; char *ptr = R;

4) инициирующее выражениеравно пустому указателю: NULL – специальное обозначение указателя ни на что не указывающего. char * ch (0) эквивалентно char * ch (NULL).

Доступ к значению объекта, адресуемому указателем, обеспечивает операция разыменования, выражение: *имя указателя; позволяет получить значение самого объекта:

 

char cc = 'a', *pc = &cc; cout << *pc;

и изменить это значение: *pc = '+'; cin >> *pc;

Можно сказать, что * указатель обладает правами переменной.

Если определен указатель без инициализации: сhar *p, использовать выражение *p в операциях присваивания или в операторе ввода не правомерно. Указатель p не обладает значением - адресом участка памяти, куда можно было занести значение. Указателю можно присвоить адрес участка памяти объекта типа char:

1) p = new char; // динамическое выделение, delete (p) - освобождение памяти

2) p = (char *) 0x157e0ffc;//значение адреса преобразуется к указателю char*

3) p =(char*) malloc (sizeof (char));

// динамическое выделение памяти free (p) – освобождение памяти

4) p присвоить адрес переменной типа char: char c; p = &c;

5) p присвоить значение другого указателя на данные типа char*:

char s, *ptr=&s; p=ptr;

Теперь допустимы операции *p ='+'; cin >> *p;







Дата добавления: 2015-08-12; просмотров: 396. Нарушение авторских прав; Мы поможем в написании вашей работы!




Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...


Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Тема 5. Организационная структура управления гостиницей 1. Виды организационно – управленческих структур. 2. Организационно – управленческая структура современного ТГК...

Методы прогнозирования национальной экономики, их особенности, классификация В настоящее время по оценке специалистов насчитывается свыше 150 различных методов прогнозирования, но на практике, в качестве основных используется около 20 методов...

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

ЛЕЧЕБНО-ПРОФИЛАКТИЧЕСКОЙ ПОМОЩИ НАСЕЛЕНИЮ В УСЛОВИЯХ ОМС 001. Основными путями развития поликлинической помощи взрослому населению в новых экономических условиях являются все...

МЕТОДИКА ИЗУЧЕНИЯ МОРФЕМНОГО СОСТАВА СЛОВА В НАЧАЛЬНЫХ КЛАССАХ В практике речевого общения широко известен следующий факт: как взрослые...

Studopedia.info - Студопедия - 2014-2026 год . (0.012 сек.) русская версия | украинская версия