Code details (cont)
Be careful with side-effects in expressions, e.g.
str[i++] = str[i++] = ' ';
... is unsafe ... use instead ...
str[i++] = ' '; str[i++] = ' ';
res = i++ - i++;
... is unsafe ... use instead ...
i1 = i++; i2 = i++; res = i1 - i2;
|
(C does not define order of evaluation of subexpressions)
|