However your phrasing makes it sound like you have some definitive and "very clever" things in mind.
C has, among other things, the increment operator, ++, that adds one to the variable after taking the old value. (If you put the operator in front of the value, such as ++x, it increments before, rather than after taking the value.) It also specifies that the compiler can take the values of variables in whatever order is most efficient. That means that it is a Very Bad Idea to use the increment operator inside an assignment if the variable is referenced more than once because you can't know just when it gets incremented. The same goes with tests, but more so, because as soon as the answer is known, the test stops. (That is, if you're using a logical AND, if the first condition is FALSE, the second isn't checked.) That means that any "side effects," as these things are called, may or may not occur, and forgetting this Very Important Detail can cause some nasty bugs. The point of that question in the interview was to see if I remembered this.