Студопедия

КАТЕГОРИИ:

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


Переменные и их адреса




Тема 9. УКАЗАТЕЛИ

Указатель – это переменная, содержащая адрес другой переменной, но перед тем, как переходить непосредственно к программированию, рассмотрим пример из жизни. Приглашая друга в гости, мы сообщаем ему адрес своего дома; друг записывает адрес на листок бумаги, и этот листок становится указателем на наш дом. По этому указателю любой человек может найти дом, и нам не нужно показывать другу сам дом, например, «приносить его с собой». Таким образом, указатель – это предмет (листок бумаги), содержащий адрес, по которому можно найти другой предмет (дом). Особую выгоду при использовании указателей можно получить в тех случаях, когда предмет, куда указывает указатель большой в каком-либо смысле.

 

Теперь постараемся понять, что такое адрес переменной. В памяти компьютера переменные хранятся в ячейках, которые имеют свой адрес, представляющий собой номер этой ячейки; чтобы узнать этот номер следует воспользоваться операцией & (амперсанд):

 

 

int m=10, n=20, k=30;

float x=12.1, y=45.8, z=67.9;

char a='T', b='*', c=';';

 

printf("-------------------------------\n");

printf("Имя\tЗначение\tАдрес\n");

printf("-------------------------------\n");

printf("%s\t%d\t\t%d\n", "m", m, &m);

printf("%s\t%d\t\t%d\n", "n", n, &n);

printf("%s\t%d\t\t%d\n", "k", k, &k);

printf("%s\t%g\t\t%d\n", "x", x, &x);

printf("%s\t%g\t\t%d\n", "y", y, &y);

printf("%s\t%g\t\t%d\n", "z", z, &z);

printf("%s\t%c\t\t%d\n", "a", a, &a);

printf("%s\t%c\t\t%d\n", "b", b, &b);

printf("%s\t%c\t\t%d\n", "c", c, &c);

printf("-------------------------------\n");

 

 

 

Заметим, что обращаясь к переменной по имени, мы фактически обращаемся к ячейке памяти, названной этим именем. Тем не менее, для обращения к ячейке памяти не обязательно знать ее имя, а достаточно знать ее адрес. Например, чтобы пригласить человека на концерт, можно посоветовать ему прийти в Оперный театр, а можно отправить его по адресу Красный проспект, 36 (это адрес Оперного театра). Таким образом, можно провести следующую аналогию:

 

Ячейка памяти Земля, где находится театр
Имя переменной Оперный театр
Адрес переменной Красный проспект, 36
Значение переменной Здание театра

 


Поделиться:

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





lektsii.com - Лекции.Ком - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты