读取内存时绕过分段错误

问题描述 投票:0回答:0

所以。我想遍历cpp中的所有内存。我正在使用Linux Mint

#include <iostream> 

using namespace std;

int main ()
{
    int var = 1;
    int * ptr = &var;
    cout << ptr;
    for(int i=0; i<2;i--){
        if(*(ptr+i) != 0) cout << ptr + i << ": " << *(ptr+i) <<endl;
    }
}

a.out 写了很多行,最后: 开始: 0x7ffcce5c2c88 结尾:0x7ffc9cf57c68

0x7ffc9cf57c78:163840 0x7ffc9cf57c6c:32633 0x7ffc9cf57c68:-1845609051 分段错误

但是我遇到了分段错误 我知道这是“分段错误意味着您试图访问您无权访问的内存。”但我想访问它。

PS。有没有办法到达内存的起始地址?

我尝试在网上查找,没有找到我想要的。我希望能够绕过分段错误

c++ linux pointers memory linux-mint
© www.soinside.com 2019 - 2024. All rights reserved.