我正在尝试解释内存的一些内容,解码 Olly 左下窗口的内容会很好(内存十六进制转储)。
一个具体的例子是 char** 数组。特别是字符 *argv[]。argv 是一个指向指针数组的指针,每个指针都是字符串的开头。在这里,我的程序有 3 个参数,因此包括在我输入 main(int argc, char *argv[]) 时使 argc=4 的路径和 exe 名称。
在下图中,我以图形方式显示了 argv=0x0041 0E80,从中我们可以看到内存中的 4 个 32 位值,每个值都是指向字符串 argv[0]、argv 1、argv[2] 和 argv[3]开头的指针(对不起红线)。
如果我选择 00410EA0 处的 4 个字节,或从 00410EA8 开始的那 16 个字节,然后在 Olly(左下象限)的这个十六进制转储窗口中右键单击,我想调出一个字符串列表。我看到有一些选项可以解码为结构和指向结构的指针,所以我认为数组和字符串数组会更简单。
任何提示?谢谢。

