我正在尝试创建一个读取某个地址值的程序.我有这个:
int _tmain(int argc, _TCHAR* argv[])
{
int *address;
address = (int*)0x00000021;
cout << *address;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但这会产生读取违规错误.我究竟做错了什么?谢谢
您只能使用指向实际对象的指针。
如果您在地址处没有对象0x00000021,则这将不起作用。
如果您想在免费存储(堆)上创建一个对象,您需要使用new:
int* address = new int;
*address = 42;
cout << *address;
delete address;
Run Code Online (Sandbox Code Playgroud)