7 Expressions [expr]

7.6 Compound expressions [expr.compound]

7.6.2 Unary expressions [expr.unary]

7.6.2.3 Increment and decrement [expr.pre.incr]

The operand of prefix ++ is modified ([defns.access]) 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.
An operand with volatile-qualified type is deprecated; see [depr.volatile.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 1:
See the discussions of addition and assignment operators for information on conversions.
— end note]
The operand of prefix -- is modified ([defns.access]) 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 2:
For postfix increment and decrement, see [expr.post.incr].
— end note]