Учитывая этот пример кода:
void func( char arg)
{
char a[2];
char b[3];
char c[6];
char d[5];
char e[8];
char f[13];
std::cout << (int)&arg << std::endl;
std::cout << (int)&a << std::endl;
std::cout << (int)&b << std::endl;
std::cout << (int)&c << std::endl;
std::cout << (int)&d << std::endl;
std::cout << (int)&e << std::endl;
std::cout << (int)&f << std::endl;
}
Как получается, что при каждом вызове я получаю результат, подобный этому:
3734052
3734048
3734044
3734080
3734088
3734072
3734056
Когда каждый адрес является четным числом? И почему адреса находятся не в том же порядке, что и переменные в коде?