要加cstring的头文件
int x,y,z;
char a[10],b[10];
memmove(a+x,b+y,z);
//表示b数组从第y个位置开始的z个元素复制到a数组从第x个位置开始的z个位置上
memmove的处理措施:
(1)当源内存的首地址等于目标内存的首地址时,不进行任何拷贝
(2)当源内存的首地址大于目标内存的首地址时,实行正向拷贝
(3)当源内存的首地址小于目标内存的首地址时,实行反向拷贝
eg:
char str1[7]="aaaabb";
memmove(str1+2,str1,4);
printf( "New string: %s\n", str1 );
/*output:
New string: aaaaaa
*/
元素类型为数字的话需:
memmove(a+x,b+y,sizeof(int)*z);
同理以此类推