8 Expressions [expr]

8.3 Unary expressions [expr.unary]

8.3.2 Increment and decrement [expr.pre.incr]

The operand of prefix ++ is modified by adding 1.
The operand shall be a modifiable lvalue.
The type of the operand shall be an arithmetic type other than cv bool, or a pointer to a completely-defined object type.
The result is the updated operand; it is an lvalue, and it is a bit-field if the operand is a bit-field.
The expression ++x is equivalent to x+=1.
[Note
:
See the discussions of addition ([expr.add]) and assignment operators ([expr.ass]) for information on conversions.
end note
]
The operand of prefix -- is modified by subtracting 1.
The requirements on the operand of prefix -- and the properties of its result are otherwise the same as those of prefix ++.
[Note
:
For postfix increment and decrement, see [expr.post.incr].
end note
]