Язык программирования C



         

Указатели и адреса - часть 2


y = *px + 1

унарные операции * и & связаны со своим операндом более крепко, чем арифметические операции, так что такое выражение берет то значение, на которое указывает px, прибавляет 1 и присваивает результат переменной y. Мы вскоре вернемся к тому, что может означать выражение

y = *(px + 1)

Ссылки на указатели могут появляться и в левой части присваиваний. Если px указывает на x, то

*px = 0

полагает x равным нулю, а

*px += 1

увеличивает его на единицу, как и выражение

(*px)++

Круглые скобки в последнем примере необходимы; если их опустить, то поскольку унарные операции, подобные * и ++, выполняются справа налево, это выражение увеличит px, а не ту переменную, на которую он указывает.

И наконец, так как указатели являются переменными, то с ними можно обращаться, как и с остальными переменными. Если py - другой указатель на переменную типа int, то

py = px

копирует содержимое px в py, в результате чего py указывает на то же, что и px.




Содержание  Назад  Вперед