memcpy如何从内存中读取数值
时间: 2023-06-23 07:09:04 浏览: 139
读取内存数据
`memcpy` 不能直接从内存中读取数值,它只是用于将一个内存区域的内容复制到另一个内存区域。如果要从内存中读取数值,可以使用指针或者引用来访问内存中的数据。下面是一个使用指针读取内存中数据的示例:
```c++
int data = 0;
char* pData = reinterpret_cast<char*>(&data); // 获取数据地址
pData[0] = 0x12; // 将数据存入内存中
pData[1] = 0x34;
pData[2] = 0x56;
pData[3] = 0x78;
std::cout << data << std::endl; // 输出结果为 0x78563412
```
上面的代码将一个 int 类型的数据存储在内存中,然后使用 char 类型的指针访问这个内存区域。最后输出的结果为 `0x78563412`,这是因为在内存中,int 类型的数据是按照小端字节序存储的,而上面的代码是在大端字节序的机器上运行的,所以需要将内存中的字节顺序反转一下才能得到正确的结果。
阅读全文