Указатели и массивы Указатели


// порядок интерпретации описания



бет5/12
Дата06.01.2022
өлшемі1,96 Mb.
#15493
түріУказатель
1   2   3   4   5   6   7   8   9   ...   12
Байланысты:
Указатели и массивы

5 4 2 1 3 // порядок интерпретации описания
Операции с указателями


  1. C указателями можно выполнять следующие операции: разадресация, или косвенное обращение к объекту (*), присваивание, сложение с константой, вычита­ ние, инкремент (++), декремент (—), сравнение, приведение типов. При работе с указателями часто используется операция получения адреса (&).


Операция разадрееации, или разыменования, предназначена для доступа к ве­ личине, адрес которой хранится в указателе. Эту операцию можно использовать как для получения, так и для изменения значения величины (если она не объяв­ лена как константа):


char

а:

//

переменная типа char

char

* р = new char:

/ *

выделение памяти под указатель и под динамическую







переменную типа

char */

*р =

'Ю': а = *р:

//

присваивание

значения обеим переменным

Как видно из примера, конструкцию *имя_указателя можно использовать в левой части оператора присваивания, так как она является L-значением (см. с. 33), то есть определяет адрес области памяти. Для простоты эту конструкцию можно считать именем переменной, на которую ссылается указатель. С ней допустимы все действия, определенные для величин соответствующего типа (если указатель инициализирован). На одну и ту же область памяти может ссылаться несколько указателей различного типа. Примененная к ним операция разадресации даст разные результаты. Например, программа


#1nclude
1nt main(){


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   12




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет