C++ memcpy 读取内存

标签 c++ memcpy

<分区>

我正在尝试使用 memcpy 来读取内存。

BYTE test[] = {0x01};
BYTE test2[] = {0x00};
memcpy (test, test2, sizeof(test));
if (test == test2){
    MessageBox::Show("Same");
}else{
    MessageBox::Show("Different");
}

为什么test和test2总是不一样?

感谢您的帮助。

最佳答案

您正在比较 testtest2 的地址。请改用 memcmp

你的代码等同于

if (&test[0] == &test2[0]){

将其更改为

if (memcmp(test, test2, sizeof(test)) == 0)

应该按预期工作。

关于C++ memcpy 读取内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39835008/

相关文章:

带模板的 C++ 数据包生成器

c++ - 为什么 memcpy 不在导入表中?

c++ - 向 STL 容器添加专门的功能

memcpy - strncpy/memcpy/memmove是逐字节还是以另一种有效方式复制数据?

C++访问结构变量导致段错误

c - 如何防止 memcpy 缓冲区溢出?

c++ - N**K 的位数

c++ - 在 C++ 中使用 NPAPI 开发 Chrome 扩展

c++ - fedora 21 上的 gcc-c++-4.1.2(双)安装

c++ - 将 python 与 C++ 集成