C++或者C#如何读取指定内存地址的值?

2024-11-02 07:45:26
推荐回答(5个)
回答(1):

每个程序芦弯带都有自己的内存地址,不是你随陪芦便指定一个闹派就可以读的,要在该程序合法的地址段内才可以读。不能读不属于该程序的地址

回答(2):

Marshal.ReadByte(IntPtr address, int offset);

从指定袜歼激的地址中读取一告袜个字节的数据
address:内存地址
offset:地址偏改链移量

回答(3):

若楼主能获得连续内存的地址值,可以这样读取其内容:(假设有一个地址是12ff7c)
const
int
*p;
p=0x12ff7c;
printf("%d",*p);
这三句可以读取拆陆并打印12ff7c这个地址的内容。
但请注意,12ff7c必须是十六进制地址值,p=0x12ff7c;前面的0x不能少,激好否则,编译将不能识别12ff7c是地址。用vc
6.0编译以上三行代码,可能会出现警告,楼主不用理会,继续编译、明御铅连接、运行,最后,是可以读出结果的。

回答(4):

在WINDOWS下无法进行这个操作了.只能访问自己的搭虚程序空间,这种操作只能毁枝宽DOS下这种非保护模式纤亮下的操作系统

回答(5):

可以,,通过api函数就可以,,不过c#不能直接读取内存值,,不过可以调用系统的api