memcpy属内存操作函数,实现内存拷贝功能,但其参数类型为void,意思是任意类型都可以,但是在函数内要进行强制类型转换,并且其与strcpy相比多了一个参数size_t count(字节数) #include<stdio.h> #include<assert.h> void my_memcpy(void *p1,void const *p2,size_t count) { assert(p1); assert(p2); char *dest = (char *)p1; //强制类型转换 char *src = (char *)p2; //强制类型转换 char *ret = (char *)p1; while(count--) { *dest++ = *src++; } } int main() { int arr1[10]={1,2,3,4,5,6,7,8,9,10}; int arr2[10]; int i = 0; int size = sizeof(arr1); my_memcpy(arr2,arr1,size); for(i=0;i<10;i++) { printf("%d ",arr2[i]); } printf("\n"); return 0; }
本文出自 “Vs吕小布” 博客,谢绝转载!
原文:http://survive.blog.51cto.com/10728490/1715228