По какой причине данный код в MSVC работает иначе, нежели в gcc:
int const foo = 5;
int* bar = (int*)&foo;
*bar = 1;
cout << foo;
Данный код в MSVC выводит 5, в gcc же 1. При этом в дебагере VS видно, что переменная foo стала 1, но выводится, по какой-то причине 5.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей