gpt4 book ai didi

c++ - 尝试从特定内存地址读取

转载 作者:行者123 更新时间:2023-11-28 03:08:43 28 4
gpt4 key购买 nike

我正在尝试通过创建一个允许我从给定位置读取内存的脚本来学习指针。

# include <iostream>

using namespace std;

int main()
{
int *p, a=5;
p=(int*)0x12345678;
cout << &a << "\n";
cout << *p << "\n";
}

第一个 cout 给出 0xbfe08368。第二个 cout 导致以下错误:

"segmentation fault, core dumped"

我的理解是无法从该内存地址读取数据。这是为什么?那里分配的任何数据不是 int 吗?我也试过 p = (char*)0x12345678float,但我仍然得到相同的结果。如何让它发挥作用?

最佳答案

您的地址空间分为您可以访问的段和您不能访问的段。

&aa的地址,在你的地址空间中。 *p 不是。

关于c++ - 尝试从特定内存地址读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19033448/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com