The evaluation of the function arguments is unsequenced, so modifying a variable in one and using its value in another gives undefined behaviour. That's the case whether you use pre-increment or post-increment.
In general, avoid modifying a variable as part of a complicated expression; especially if its value is used elsewhere in the expression, since that tends to give an unspecified value or (in some cases) undefined behaviour.