获取随机地址位置的值而不将其存储在变量中
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 注入。
#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 注入。