是否可以使用C++中的指针更改变量的地址

Gra*_*ner -2 c++ pointers

假设我有以下程序:

int a=7;  // while &a=0x67a9
Run Code Online (Sandbox Code Playgroud)

有没有办法改变ADRESS 一个,为前.0xAA55将?

use*_*042 6

不,那是不可能的.局部变量的地址是寄存器或堆栈地址.所以这些甚至可以随着每个调用环境而改变.


如果您知道您的硬件支持在该特定地址处具有值,则可以使用指针:

volatile int* pa = 0x67a9;
Run Code Online (Sandbox Code Playgroud)

并访问该值

std::cout << *pa << std::endl;
Run Code Online (Sandbox Code Playgroud)