Linux 下 memcpy()有Segmentation fault
Linux 下, 如下的function call:
AF1()
{
my_structure span; /*define local variable in AF1*/
给span赋值
......
......
memcpy(, &span, 3)
.....
return
}
运行报告memcpy处有Segmentation, 而且是span地址越界,dump显示span地址已经不再User space。 各位高手能否给指点一二?
多谢!
------解决方案--------------------舍不得貼多點代碼,怎麼幫忙
------解决方案--------------------my_structure aspan,bspan; /*define local variable in AF1*/
...
memcpy(&aspan,&aspan,sizeof(aspan));
...
------解决方案--------------------给出的代码太少,没办法判断。
但是如果你确信你的代码没有问题的话,可以试着改变编译时的字节对齐方式。
-xmemalign=4s or -xmemalign=8s