Показать сообщение отдельно

  #3  
Старый 30.03.2023, 20:47
Digger Man52
Познавший АНТИЧАТ
Регистрация: 14.07.2019
Сообщений: 1,097
С нами: 3596877

Репутация: 183


По умолчанию

Да, *(int*)0xBAB230 это разыменование указателя на int, *(int*) используется для приведения указателя на void к указателю на int

Цитата:
Сообщение от voodushevlen  

C++:





Код:
// В ИТОГЕ: int& addr = *(int*)0xBAB230 == int& addr = b; addr = *b; *(int*)0xBAB230 - адрес адреса, который затем разименовывают и получается адрес в нужном формате?

Мы разыменовываем 0xBAB230 , и присваиваем это значение, addr и получаем addr = *(int*)0xBAB230 и addr = b;

Альтернативный вид это конструкции, будет выглядеть как







C++:





Код:
*
reinterpret_cast

(
0xBAB230
)


*reinterpret_cast(0xBAB230) возвращает значение переменной, находящейся по адресу 0xBAB230
 
Ответить с цитированием