Я использую пример кода для проверки расстояния между двумя целыми числами, как в ответе на этот вопрос .
int i = 0, j = 0;
std::cout << &i - &j;
Из моего представления о представлении памяти эти адреса памятииз этих двух переменных должны быть рядом друг с другом, и разница должна быть ровно 1.
К моему удивлению, запуск этого кода с компилятором MS в VS2017 печатает 3 и запуск того же кода сGCC печатает 1 .
Почему это происходит, что-то не так с VS?