Почему символы в стеке не разделены? - PullRequest
0 голосов
/ 06 ноября 2018

Когда я бегу:

void samp(int a = 0, int b = 2,unsigned char c = 1, unsigned char d = 2 )
{
    std::cout  << reinterpret_cast<intptr_t>(&b)- reinterpret_cast<intptr_t>(&a) << "," << reinterpret_cast<intptr_t>(&c) - reinterpret_cast<intptr_t>(&a) << "," << reinterpret_cast<intptr_t>(&d) - reinterpret_cast<intptr_t>(&a) << std::endl;
}

Я получаю 4,8,12. Я бы ожидал 4,5,6, поскольку sizeof(unsigned char) равно 1, и я не думаю, что есть проблемы с заполнением. Определяется ли эта реализация? Чего мне не хватает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...