Я пытаюсь понять указатели в C ++.
Там у нас есть небольшой пример кода:
int main(void) {
int var = 8;
void* pointer = &var; // 0x00A0FB64
}
И есть изображение памяти: введите описание изображенияздесь
0x00A0FB64 08 00 00 00 cc cc cc cc ca c8 a0 1d 84 fb a0 00 ee 2b bf 00 01 00 00 00 20 53 12 01 00 5a 12 01 dc fb a0 00 50 2a bf 00
В шестнадцатеричной системе счисления 08 00 00 00
, и когда мы преобразуем ее в двоичную систему счисления:
Мы получим 1000 00000000 00000000 00000000
.
Размер целого числа должен быть 32 бита, но есть только 28 бит.
Как это возможно?
И правильно ли я понимаю таблицу памятицелое число равно (?) :
0x00A0FB64 -> 08
0x00A0FB65 -> 00
0x00A0FB66 -> 00
0x00A0FB67 -> 00
Спасибо за любую помощь!