C++ - *(int**) 地址?这里发生了什么?
C++ - *(int**) address? What happens here?
我浏览了一些代码,基本上是一个钩子(dll注入(。在代码中,我发现了以下内容:
int Address = 0x12345678; //Address of a memory location of target process
int *Pointer = *(int**) Address; //What happens here?
所以看起来0x12345678(地址只是一个示例(是一个指针。因此,我们想要获取的值存储在内存地址0x12345678。我猜对了,会发生以下情况:
-将地址强制转换为 int 指针并取消引用它,以获取存储在 0x12345678
- 将内存地址0x12345678的值也视为 int-pointer
提前非常感谢你,对不起我的英语不好!
-Cast Address 到 int 指针并取消引用它,以获取存储在 0x12345678
不。它将Address
强制转换为指向 int 的指针。并取消引用它,以获取指向存储在0x12345678
的int 的指针
- 将内存地址0x12345678处的值也视为整数指针
是的。
相关文章:
- 此测试()中发生了什么意外过程?为什么总是覆盖 ch[0 1 2..]?
- 这C++代码中发生了什么C++(指数函数)
- 哪种方式更快?究竟发生了什么,我们没有看到什么?
- 我正在将一个 std::string 传递给一个 boost 函数,该函数对该类型进行常量引用,但该值发生了变化
- 我的C++合并排序代码不起作用。我在这里错过了什么?
- c++问题:给一个变量赋值后,另一个变量发生了变化
- istringstream,num1 和 num2 在这里发生了什么?
- C++ - *(int**) 地址?这里发生了什么?
- 这里的矢量数组发生了什么?
- 这里发生了什么,还有输出是什么?(无线索)
- 如果有人能向我解释这里发生了什么
- 有人可以解释一下这里发生了什么(类和构造函数/析构函数)吗?
- 值未存储在向量中 - 不确定这里发生了什么
- 为什么 x 0 在这里,x=1 语句中发生了什么?
- 这里的计算机内存中发生了什么
- 字符到整数的转换 - 这里发生了什么?
- 有趣的调试,这里发生了什么
- 带有模板的类模板 同学朋友,这里到底发生了什么?
- 我的ArrayStack在这里发生了什么
- 这里到底发生了什么