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

时间:2018-10-12 22:36:20

标签: exception memory segmentation-fault 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 {???}

1 个答案:

答案 0 :(得分:0)

  

运行此代码时,我遇到了访问冲突写入位置0xB7066CBC。无法确定发生了什么情况

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

您的问题很可能是由于任何原因导致您相信这些字节 (或应该是可写的),但是由于您没有提供有关该推理可能是什么的线索,很难提供任何帮助。