Грамматика C ++ определяет выражение постфикса следующим образом:
postfix-expression:
primary-expression
...
postfix-expression ++
....
При синтаксическом анализе a ++ ++
, a
- это первичное выражение, поэтому a ++
- это постфикс-expression.Последний ++
относится к результату этого постфиксного выражения.
Короче говоря, ++
групп слева направо.
То же самое относится ко всему, что мы обычно думаемкак постфиксные операторы: они применяются к постфиксному выражению, поэтому они группируются слева направо.
Как уже упоминалось в комментарии, переход на другой путь сделает ptr[i]++
довольно прикольным.
Взглядв (вероятно, нелегальной) PDF-версии этой книги, которую я нашел в Интернете, я подозреваю, что записи для postfix ++ и postfix-- являются опечатками, которые можно вырезать и вставить.Предполагается, что оба этих оператора описаны на стр. 147, как и префикс ++ и префикс--, но единственное обсуждение здесь касается префикса ++ и префикса -.