在DEBUG版下调用memcpy和memmove实际上都是调用的同一个函数memmove,只有在RELEASE版下memcpy和memmove调用才区分开。
这是我在测试memcpy和memmove这两个函数发现的。示例代码如下:
#include <stdio.h>
#include <string.h>
int main(int argc,char* argv[])
{
char p1[] = "111111111122222222223333333333444444";
char p2[] = "111111111122222222223333333333555555";
printf("%s/n",p1);
memcpy(p1+10,p1,26);
printf("%s/n",p1);
printf("%s/n",p2);
memmove(p2+10,p2,26);
printf("%s/n",p2);
return 0;
}