Более того, один и тот же компилятор может выдавать разные значения в зависимости от опций оптимизатора.
Даже в одной и той же программе может получаться разный результат:
int i=5,j=5;
i=++i+ ++i;
printf("i=%i j=%i" ,i,++j+ ++j); //Вывод: i=14 j=13
жесть:)