...
According to the C standard, Section 6.5 [ISO/IEC 9899:2011],
Except as specified later, side effects and value computations of subexpressions are unsequenced.
...
CERT C++ Secure Coding Standard: EXP10-CPP. Do not depend on the order of evaluation of subexpressions or the order in which side effects take place
ISO/IEC 9899:2011 Section Section 6.5, "Expressions," Section 6.5.16, "Assignment operators," Section 6.5.2.2, "Function calls," and Section 6.7.9, "Initialization"
...