Урок 4.5. Операции присваивания
4.5. Операции присваивания
Операция присваивания может быть простой или составной в зависимости от знака операции присваивания. Простая операция присваивания обозначается знаком = и используется для присваивания переменной значения некоторого выражения. Тип данных результата – тип левого операнда операции присваивания.
Например: y = 12; x = y + 2 * z;
В выражениях Си допускается произвольное количество операций присваивания. Операции присваивания имеют более низкий приоритет, чем ранее описанные и выполняются справа налево.
Например, в результате вычисления выражения k=l=d=a+b переменные k, l и d получают значение суммы a+b.
В результате вычисления выражения k=3+(d=a+b) переменная d получит значение a+b, а переменная k получит значение 3+d. Операции присваивания связывают переменную и выражение, устанавливая значение переменной равное значению выражения, стоящего справа от знака присваивания.
Бинарным операциям: + - * / % << >> & ^ | соответствует составная операция присваивания, которая обозначается как op=, где op одна из вышеперечисленных операций, например += и *= и т.д. Составная операция присваивания в виде:
<переменная> op = <выражение>
определяется через простую операцию присваивания следующим образом:
<переменная> = <переменная> op (<выражение>)
Например, d+=2 эквивалентно d=d+2, a n*=2*x-3 эквивалентно n= n *(2*x-3). Ясно, что запись можно сокращать, если переменная встречается и слева и справа от знака присваивания.
Кроме краткости записи преимущество использования составных операций присваивания заключается в том, что они работают быстрее, так как транслируются в более компактный машинный код и больше соответствуют природе человеческого мышления. Мы думаем, например, так: "увеличить z на 2" (z+=2), а не "взять z, добавить 2, вернуть результат в z" (z=z+2). Как правило, для составных операций присваивания компилятор строит более эффективную программу.
Оставить комментарий