Использование указателей в программах на языках С/С++/С# . Васильев В.Г. - 5 стр.

UptoLike

Составители: 

return;
}
Приведенные объявления в программе читаются следующим образом:
point_Ch есть указатель на тип сhar. Переменная point_count есть указатель на
тип int. Указатель может быть объявлен на любой тип данных без
исключения. Это может быть структура, класс, функция, объединение и пр.
Выбор имен (идентификаторов) указателей дело программиста.
Обязательным является символ '*' перед именем идентификатора. Именно
этот символ характеризует данную переменную как указатель. При компиляции
программы будет выделена память для хранения двух адресов. В 32
разрядной машине это - 4 байта независимо от того, с каким типом данных
будет работать указатель.
Символ '&', стоящий перед именем переменной, означает операцию
получения адреса этой переменной. В двух последних операторах программы
переменной point_Ch присваивается адрес переменной Ch, а переменной
point_count - адрес переменной count. Другими словами, в двух последних
операторах выполняется инициализация указателей. Теперь адрес переменной
Ch имеет имя point_Ch, а переменной count - point_count.
Для того чтобы узнать адреса переменных Ch и count, усложним
программу.
/* программа # 1.3 */
# include <stdio.h>
void main ( void )
{
char Ch, *point_Ch; int count,*point_count;
Ch = 'T';
count = 0;
point_Ch = &Ch;
point_count =&count;
printf("Адрес переменной Ch = %08X \n",point_Ch);
printf("Адрес переменной count = %p \n",point_count);
}
В начале поясним, что означает спецификация формата 0Х8 в первом
операторе printf. 0 - напечатать ведущие (незначащие) нули в адресе. 8Х-
отвести 8 позиции для выдачи на экран значения адреса, которое должно быть
представлено шестнадцатеричным числом. Х прописное означает, что если в
шестнадцатеричном числе имеются символы, то они должны быть напечатаны
прописными буквами. Во втором операторе printf используется спецификация
формата p, которая специально предназначена для печати адресов. Адрес
5