When an expression statement is executed, the expression is evaluated according to the rules outlined in Chapter 4, “Expressions and Assignments.”
expression-statement : expression opt ;
All side effects from the expression evaluation are completed before the next statement is executed. An empty expression statement is called a null statement. See “The Null Statement”.
These examples demonstrate expression statements.
x = ( y + 3 ); /* x is assigned the value of y + 3 */
x++; /* x is incremented */
x = y = 0; /* Both x and y are initialized to 0 */
proc( arg1, arg2 ); /* Function call returning void */
y = z = ( f( x ) + 3 ); /* A function-call expression */
In the last statement, the function-call expression, the value of the expression, which includes any value returned by the function, is increased by 3 and then assigned to both the variables y and z.