"Андрей Богатырев. Руководство полного идиота по программированию (на языке Си)" - читать интересную книгу автора


ЛЕВАЯ_ЧАСТЬ = ПРАВАЯ_ЧАСТЬ ;

В левой части обычно стоит просто имя переменной В КОТОРУЮ
записывается вычисленный справа результат.

Если имя переменной встречается в ПРАВОЙ части, то это
означает "подставить сюда текущее значение этой переменной".

При этом текущее значение самой переменной НЕ изменяется,
берется его копия. То есть, "вынутое из ящика значение"
не оставляет ящик пустым! Вынимается копия, другая копия остается в ящике.

Итак:

x = x + 3 ;

Пусть сейчас значение x есть 12

Сначала вычисляется ПРАВАЯ часть оператора присваивания.

x + 3

-----
/ x /
---------------
| 12 | |
--------|------
|
|
| ВЗЯТЬ копию значения (то есть число 12) из ящика с именем "ИКС"
|
V
Вместо x
подставляем
число
12 + 3 ----> СКЛАДЫВАЕМ.

Сложение дает 15.
В этот момент x все еще равно 12
(в ящике лежит число 12)

Теперь вычисляется само присваивание:

x = 15 ;

|
|
| ПОЛОЖИТЬ результат в ящик с именем "ИКС"
| (истребив в нем прежнее значение, если было)