[prev] [index] [next]

Code details (cont)

Side-effects in arguments are problematic ...

processNextTwo(getchar(), getchar());

... is unsafe ... use instead ...

c1 = getchar(); c2 = getchar();
processNextTwo(c1,c2);

x = f(i++, i++, i++);

... is unsafe ... use instead ...

x = f(i, i+1, i+2);  i += 2;

(C does not define order of evaluation of function arguments)