char rTemp[4096];
char aa[1000];
..............1.memcpy(&rTemp[10],a,100);
2.memcpy(rTemp+10,a,100);请问那个更安全呢?

解决方案 »

  1.   

    这个我想也是的,但是我在做程序的时候,同样的参数传进来,但是最后得到的rTemp,确有两个结果,而且就出现了一次,以后再没有发现这个问题,我是搞通信的,我真害怕再出现这种情况,我就惨了。
      

  2.   

    使用memmove吧,这个可以处理内存交叠的情况
      

  3.   

    我觉得对于目前的情况是没什么区别,但我更推荐1.memcpy(&rTemp[10],a,100);
    因为如果定义不是char类型,为int或别的类型,可能因为编译器不同,对size大小解释不同;
    这只是我的一点想法,供大家参考!
      

  4.   

    当然一样了。第一个经过编译就变成了第二个了。
    当然,NewFree(新自由人)说得很有道理。如果是int类型,&rTemp[10]应该是rTemp+40.