如何为指针分配特定的内存地址?

How to assign a specific memory address to a pointer?

本文关键字:内存 地址 指针 分配      更新时间:2023-10-16

假设我的计算机上有一个内存地址"0x8f820dae" 我想在这个特定的内存位置存储一个整数值"2",我该怎么做?

假设这是进程内存地址上的有效可写对象,并且"整数"是指int

*reinterpret_cast<int*>(0x8f820dae) = 2;

请注意,这会将值2(0x00000002( 写入地址0x8f820dae(考虑 x86(。<int>如果要写入不同数量的字节(即sizeof(int)字节将写入内存地址(。

通常如下所示:

*(int *)0x8f820dae = 2;

(或者如果您愿意,可以使用C++式演员表。