Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Контакти
 


Тлумачний словник
Авто
Автоматизація
Архітектура
Астрономія
Аудит
Біологія
Будівництво
Бухгалтерія
Винахідництво
Виробництво
Військова справа
Генетика
Географія
Геологія
Господарство
Держава
Дім
Екологія
Економетрика
Економіка
Електроніка
Журналістика та ЗМІ
Зв'язок
Іноземні мови
Інформатика
Історія
Комп'ютери
Креслення
Кулінарія
Культура
Лексикологія
Література
Логіка
Маркетинг
Математика
Машинобудування
Медицина
Менеджмент
Метали і Зварювання
Механіка
Мистецтво
Музика
Населення
Освіта
Охорона безпеки життя
Охорона Праці
Педагогіка
Політика
Право
Програмування
Промисловість
Психологія
Радіо
Регилия
Соціологія
Спорт
Стандартизація
Технології
Торгівля
Туризм
Фізика
Фізіологія
Філософія
Фінанси
Хімія
Юриспунденкция






Приклад

void main()

{

int a;

a = 5;

int *b; //a: 5 &a: 9004:0FFE b : 000B:8FCF

b = &a; //a: 5 &a: 9004:0FFE b: 9004:0FFE

*b = 10; //a: 10 &a: 9004:0FFE b: 9004:0FFE

}

 

З наведених прикладів можна зробити висновок, що надати значення деякій статичній змінній можна двома способами:

- використовуючи її ім’я ( а = 5)

через вказівник, значенням якого

Вказівнику дозволено вказувати тільки на об'єкти певного типу. (Існує одне виключення: "вказівник на void" може вказувати на об'єкти будь-якого типа, але до такого вказівника не можна застосовувати оператор непрямого доступу.

Якщо ip вказує на x цілого типу, то *ip можна використовувати в будь-якому місці, де допустимо вживання x;

наприклад*ip = *ip + 10; збільшує *ip на 10.

Унарні оператори * і & мають більш високий пріоритет, ніж арифметичні оператори, так що присвоєння у = *ip + 1; бере те, на що вказує ip, і додає до нього 1, а результат присвоює змінній у.

Аналогічно *ip += 1; збільшує на одиницю те, на що вказує ip; ті ж дії виконують ++*ip; і (*iр)++;

В останньому записі дужки необхідні, оскільки якщо їх не буде, збільшиться значення самого вказівника, а не того, на що він вказує. Це обумовлено тим, що унарні оператори * і ++ мають однаковий пріоритет і порядок виконання - справа наліво.

Оскільки вказівники самі є змінними, в тексті вони можуть зустрічатися і без оператора непрямого доступу.

- є адреса цієї змінної (b = &a; *b = 10)

Переадресація вказівників

Відразу після створення вказівника b (int *b), він отримує значення випадкової адреси (b = 000B:8FCF). Варто пам’ятати, що комірка пам’яті з адресою 000B:8FCF – випадкова, тобто в цій комірці може зберігатися значення деякої іншої змінної (неможливо сказати якої, бо адреса її вибиралася випадково). Тому, якщо відразу після створення вказівника b (int *b) виконати оператор *b = 10, то таким чином можна змінити значення деякої змінної (визначити якої неможливо). Тому після створення вказівника необхідно:

- або переадресувати її на потрібну статичну змінну (як у наведених прикладах b = &a – переадресація вказівника b на статичну змінну а);

- або створити так звану динамічну змінну, адрес якої буде міститися у вказівнику)


Читайте також:

  1. I. Культура учебного труда как теоретическая и прикладная проблема педагогической психологии
  2. Абсолютні синоніми (наприклад, власне мовні й запозичені) в одному тексті ділового стилю вживати не рекомендується.
  3. Алгоритм однофакторного дисперсійного аналізу за Фішером. Приклад
  4. Аналіз структури та динаміки необоротних активів за даними Ф№1 «Баланс» (на прикладі ВАТ «Горизонт»)
  5. Ассиметричное прикладывание: руководство пользователя
  6. Базові та прикладні класифікації
  7. В процесі читання виділіть маркером або підкресліть приклади дії променів на живі організми.
  8. В чому полягає явище тунелювання через потенціальний бар’єр, наведіть приклади.
  9. Визначення і приклади
  10. Вільсон О. Г. Охорона праці в галузі (на прикладі будівництва). Навчальний посібник. – К.: «Основа». 2006. – 204 с.
  11. Возникновение прикладной психологии, 1892-1919
  12. ВПРАВА 11. Ознайомтеся з фрагментами наукових текстів, знайдіть приклади для характеристики синтаксичних особливостей викладу інформації українською мовою.




Переглядів: 430

<== попередня сторінка | наступна сторінка ==>
Приклад | Динамічна пам’ять

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

 

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.004 сек.