SPECYFIC ADDRESC++中的字节数组
我想将进程内存的某些部分映射为字节数组。 怎么做SPECYFIC ADDRESC++中的字节数组,c++,arrays,memory,bytearray,C++,Arrays,Memory,Bytearray,我想将进程内存的某些部分映射为字节数组。 怎么做 byte * AmmoBytes = (byte *) 0xXXXXXXXX; 我有一个字节数组: byte AmmoBytes[3] 我希望这个数组从地址0xXXXXXXX开始; 怎么做?这是不安全的,但你可以说 byte * AmmoBytes = (byte *) 0xXXXXXXXX; byte*AmmoBytes=byte*0xXXXXXXXX这是不安全的,但是你可以说 byte*AmmoBytes=byte*0xXXXXXXXX
byte * AmmoBytes = (byte *) 0xXXXXXXXX;
我有一个字节数组:
byte AmmoBytes[3]
我希望这个数组从地址0xXXXXXXX开始;
怎么做?这是不安全的,但你可以说
byte * AmmoBytes = (byte *) 0xXXXXXXXX;
byte*AmmoBytes=byte*0xXXXXXXXX这是不安全的,但是你可以说
byte*AmmoBytes=byte*0xXXXXXXXX一般来说,您无法可靠地执行此操作 如果0xXXXXXXX表示硬件地址,则需要编写设备驱动程序以获得对内存的内核访问 如果它是一个正常的内存地址,那么不能保证它映射到一个有效的内存位置,您很可能会使程序崩溃
你到底想在这里做什么?一般来说,你不能可靠地做到这一点 如果0xXXXXXXX表示硬件地址,则需要编写设备驱动程序以获得对内存的内核访问 如果它是一个正常的内存地址,那么不能保证它映射到一个有效的内存位置,您很可能会使程序崩溃
你到底想在这里做什么?我将使用常量指针声明内存:
将指针声明为常量有助于编译器检测错误,例如错误地更改指针值而不是指针指向的值 我将使用常量指针声明内存:
将指针声明为常量有助于编译器检测错误,例如错误地更改指针值而不是指针指向的值 许多简单的嵌入式系统不需要内核访问。只需将地址加载到指针中就足够了。许多简单的嵌入式系统不需要内核访问。仅将地址加载到指针中就足够了。仅对于记录,字节*[3]的类型是什么?@ThomasMcLeod:它是指向由3个字节元素组成的数组的指针。因此,在本例中,a是对绑定到内存地址0xDEADBEEF的3个元素字节数组的引用。仅对于记录,字节*[3]的类型是什么?@ThomasMcLeod:它是一个指向3个字节元素数组的指针。那么,在本例中,a是对绑定到内存地址0xDEADBEEF的3个元素字节数组的引用?
byte * const AmmoBytes = (byte * const) 0xFFFF000;