C 从内存地址转移数据
如何从地址中移动字节。如果我在16位地址中存储字符“ABCDEF” 从0x210A开始C 从内存地址转移数据,c,C,如何从地址中移动字节。如果我在16位地址中存储字符“ABCDEF” 从0x210A开始 0x210A - 'A' 0x210B - 'B' 0x210C - 'C' 0x210E - 'E' 0x210F - 'F' 这些我想换10次。只有,这需要从0x2100存储 0x2100 - 'A' 0x2101 - 'B' 0x2102 - 'C' 0x2103 - 'E' 0x2104 - 'F' 我知道只取一个变量就可以实现移位。我想将字节从一个地址移到另一个
0x210A - 'A'
0x210B - 'B'
0x210C - 'C'
0x210E - 'E'
0x210F - 'F'
这些我想换10次。只有,这需要从0x2100存储
0x2100 - 'A'
0x2101 - 'B'
0x2102 - 'C'
0x2103 - 'E'
0x2104 - 'F'
我知道只取一个变量就可以实现移位。我想将字节从一个地址移到另一个地址。您可以直接使用,例如:
#include <string.h>
const char * src = (char *)0x210a; // source address
char * dst = (char *)0x2100; // destination address
const size_t len = 5; // no of bytes
memmove(dst, src, len);
#包括
常量char*src=(char*)0x210a;//源地址
char*dst=(char*)0x2100;//目的地址
常数大小\u t len=5;//字节数
memmove(dst、src、len);
使用memcpy
或memmove
。