logo
Подбельский Фомин_Программирование на языке СИ_

Арифметические операции и указатели.

Арифметические операции и указатели. Унарные адресные операции '&' и '*' имеют более высокий приоритет, чем арифметические операции. Рассмотрим следующий пример, иллюстрирующий это правило:

*/

При использовании адресной операции '*' в арифметических выражениях следует остерегаться случайного сочетания знаков операций деления '/' и разыменования '*', так как комбинацию '/*' компилятор воспринимает как начало комментария. Например, выражение

следует заменить таким:

Унарные операции '*' и '++' или '--' имеют одинаковый приоритет и при размещении рядом выполняются справа налево.

Добавление целочисленного значения n к указателю, адресующему некоторый элемент массива, приводит к тому, что указатель получает значение адреса того элемента, который отстоит от текущего на n позиций (элементов). Если длина элемента массива равна d байтов, то численное значение указателя изменяется на (d*n). Рассмотрим следующий фрагмент программы, иллюстрирующий перечисленные правила;