*ptr++ += 2; means: get the datum addressed by ptr; (increment ptr as a side-effect, AFTER getting the datum) add 2 to the datum; put the modified datum back from whence it came; (if any action is needed to fix side-effects, do it now) This is figured out by following the operator precedence hierarchy.