c++ - 这里发生了什么 : v5 = *(_Byte *)(this + 4)?

标签 c++ ida

我正在查看来自 IDA pro 的代码转储。有一个函数作为这个布局:

garbled_name(int this...
    unsigned int v5 ;
    v5 = *(_Byte *)(this + 4);
    ...

我真正好奇的是“+ 4”到底在做什么?这是添加还是其他?

谢谢

最佳答案

代码采用整数“this”,将其加 4,将其转换为指向字节的指针,然后将“v5”设置为该地址处字节的值。

关于c++ - 这里发生了什么 : v5 = *(_Byte *)(this + 4)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4351429/

相关文章:

c++ - 使用已被占用的函数名称

c++ - 在 C++11 中,是否有 std::lock_guard 的变体在构造时解锁并在销毁时锁定?

objective-c - 在IDA Pro中,第二个ARM操作数中的 '::lower16::'是什么意思?

assembly - 如何将 IDA Pro 的 "see"外部参照设置为字符串?

python - 在 'IDA PRO' 中,让 'IDAPython' 在启动时导入默认模块

c++ - 以十六进制修改 exe 后推送指令中的地址发生变化

c++ - 计算器程序无法编译

c++ - 将 C++ 应用程序部署到 Google Cloud Platform Kubernetes 引擎

c++ - 在 MinGW 中导入内联函数

ios - guarded_open_np 的参数