В тесте с множественным выбором был задан вопрос: что будет на выходе следующей программы:
#include <stdio.h>
int main(void)
{
int a = 10, b = 5, c = 2;
printf("%d %d %d\n");
return 0;
}
и варианты были различными перестановками 10, 5 и 2. По какой-то причине это работает в Turbo C++, который мы используем в колледже. Однако этого не происходит при компиляции с помощью gcc (который выдает предупреждение при включении -Wall) или clang (в котором включен -Wformat и выдает предупреждение по умолчанию) или в Visual C++. На выходе, как и ожидалось, мусорные значения. Я предполагаю, что это как-то связано с тем, что либо Turbo C++ является 16-разрядным и работает на 32-разрядной Windows XP, либо с тем, что TCC ужасен, когда дело доходит до стандартов.