memcpy():访问冲突写入位置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了memcpy():访问冲突写入位置相关的知识,希望对你有一定的参考价值。

我正在运行此代码时获取访问冲突写入位置0xB7066CBC。无法弄清楚发生了什么,有什么建议吗?

int main(void)

{
unsigned int SIG = 0x00000000;
unsigned int *base = (unsigned int *)0xb7066CBC;
SIG = 0x5a5a5a5a;
memcpy(base ,&SIG, 4);
}

以下是我遇到此故障时获得的值。

&SIG 0x003bf7c0 {0x5a5a5a5a}
SIG  0x5a5a5a5a
base 0xb7066cbc {???}
答案

我正在运行此代码时获取访问冲突写入位置0xB7066CBC。无法弄清楚发生了什么

发生的事情是位置0xB7066CBC的4个字节不可写。

你的问题很可能在于任何推理使你相信这些字节是(或应该是)可写的,但由于你没有提供任何关于这种推理可能的线索,因此很难提供任何帮助。

以上是关于memcpy():访问冲突写入位置的主要内容,如果未能解决你的问题,请参考以下文章

PYTHON - Ctypes:OSError:异常:访问冲突写入0xFFFFFFFFFA1C001B

opencv中的访问冲突写入位置

为啥在内存位置写入访问冲突[重复]

写入位置时访问冲突

例外:使用 strcpy_s 时访问冲突写入位置

链表访问冲突写入位置