Код: Выделить всё
int a,b,c,d;
int _tmain(int argc, _TCHAR* argv[])
{
int e,f,g,h;
cout << (long)&a <<endl;
cout << (long)&b <<endl;
cout << (long)&c <<endl;
cout << (long)&d <<endl;
cout << (long)&e <<endl;
cout << (long)&f <<endl;
cout << (long)&g <<endl;
cout << (long)&h <<endl;
return 0;
}
4288876
4288872
4288868
4288864
1245024
1245012
1245000
1244988
То бишь, при глобальном объявлении переменных компиллятор почему-то выделяет память в обратном порядке

А в локальном вообще оставляет под каждую переменную по 12 байт, и тоже в обратном порядке.
Есть идеи, в чем причина?