0

我正在尝试查看 C++ 代码的堆内存。

我目前在 Windows 上工作并使用 HeapMemView。

我使用下面的代码,尝试在堆上分配一些内存并尝试使用 HeapMemView 找出它们...

#include <iostream>
using namespace std;

int main(int argc, char const *argv[])
{
    char * a = new char[5000];
    for (int i = 0; i < 5000; ++i)
    {
        a[i] = 'a';
    }

    cout << a;

    int b = 0;
    cin >> b;

    return 0;
}

我会让代码停在cin >> b并启动 HeapMemView 来查看堆内容。

我导出 HeapMemView 生成的所有堆内存段,并将它们放入一个 hex 文件中,在 Sublime Text 2 中读取它们......

我的问题是我找不到长序列的“aaaaaaaaaa ...”以及“61616161616161”......

我做错事了吗...?

谁能告诉我在 Linux 上是否有类似 HeapMemView 的工具......?

非常感谢!!!

4

1 回答 1

1

我最初使用 32 位 g++ 在我的 64 位 Windows 上使用 64 位 HeapMemView ...

我使用 32 位 HeapMemView,它工作正常

于 2013-10-20T02:53:07.917 回答