Поддержка JavaScript отключена
SBP-Program | |||||||
На главную -> C |   | ||||||
  |
]]> Указатели в C на примерахУказатель — это переменная, значением которой является адрес другой переменной. Простой пример указателя: Получаем: ![]() В этом примере суть основное, что надо знать про указатели в языке Си. Сначала объявлена переменная val; int val = 0;
Далее объявляем указатель на тип int с помощью оператора *: int *pVal;
Принято название указателя начинать с «p», ведь указатель по-английски pointer. С помощью оператора & получаем адрес переменной val и присваиваем этот адрес указателю. Указатель — это переменная для хранения адреса другой переменной: pVal = &val;
Далее выполняем разыменование с помощью оператора *: *pVal = 123;
Выражение *pVal — это переменная, на которую указывает наш указатель pVal, а он указывает на val. *pVal — это новое обозначение исходной переменной val. Выражение *pVal = 123;
равно выражению val = 123;
Итак, указатель хранит адрес переменной, а разыменованный указатель есть просто новое обозначение переменной, на которую указывает указатель. Ещё раз: int val = 0; // Объявляем переменную val типа int;
int *pVal; // Объявляем указатель на тип int; pVal = &val; // Сохраняем адрес переменной val в указателе pVal; // Теперь разыменование *pVal; это *pVal — просто новое обозначение переменной val. *pVal = 123; // Присваиваем переменной val значение 123; //Теперь val содержит 123. Вместо *pVal = 123; можно было написать val = 123; с тем же успехом. Обратите внимание, что оператор * используется для объявления указателей и для разыменования. Оператор & используется для получения адреса переменной. Операторы * и & являются обратными. Пример: *(&val) = 123;
даёт val = 123;
Программирование
|
  | |||||
 
|
 
|
||||||