Main returns int not void, print is not a standard library function and you have not included and headers.
However assuming that you fixed all that, including changing the printf format string to "i=%d" then line 4 wont compile because the operator-- must be applied to an lvalue but 2 is not an lvalue.
Assuming you change line 4 to i=i-- - -2; i.e. take away minus 2 then you have attempted to modify the value of the variable i twice between sequence points so the expression invokes undefined behaviour and anything could be printed, or nothing, or whatever you think the right answer is.
Comment