Примером неуказанного поведения на языке C является порядок оценки аргументов функции. Это может быть слева или справа налево, вы просто не знаете. Это повлияет на оценку foo(c++, c)
или foo(++c, c)
.
Какое еще неуказанное поведение может удивить не знающего программиста?