获取随机地址位置的值而不将其存储在变量中

Getting value of random address location without storing it in a variable

#include<iostream>
using namespace std;


struct node{
    int data;
    node* l,*r;
};


int main()
{
    node* n1 = new node;
    cout<<(n1->l);
    return 0;
}

在上面的代码中我没有初始化结构数据l和r。所以现在 n1->l 中存储的地址是 CDCDCDCD。现在,如果我想查看存储在该地址中的值,如何在不将地址存储在变量中的情况下查看该值。

一般来说,您可以将任何整数转换为指针,风险自负。

node* my_ptr = (node*)0xDEADBEEF;  // Casting to a pointer
node my_node = *(node*)0xDEADBEEF; // Casting to a pointer and dereferencing

第二行是我相信你想要做的“不将地址存储在变量中”。然而,这很老套,仅在特定情况下有用,例如 DLL 注入。