转载请注明出处:http://blog.csdn.net/qq_26093511/article/details/53214692

函数原型:

void *memcpy(void *dest, const void *src, size_t n);

之前使用memcpy复制的都是unsigned char型的数据,最近突发奇想,想memcpy来复制unsigned int 型的数据。

下面就是我写的  用于验证memcpy复制unsigned int 型数据 的代码。

#include<string.h>
#include<stdio.h> unsigned int flash_read(unsigned int *address,unsigned int *buf,unsigned int len)
{
unsigned int i;
if(buf==NULL)
return 1;
for(i=0;i<len;i++){
*buf =*address;
address+=4;
}
return 0;
} int main(int argc,char *argv[])
{
int i;
unsigned int ceshi[]={1234,4321,5678,8765,6789,9876};
unsigned int ceshiPrint[20]; memcpy(ceshiPrint,ceshi,sizeof(ceshi));
for(i=0;i<6;i++){
printf("memcpy %d\n",ceshiPrint[i]);
} flash_read(ceshiPrint,ceshi,6);
for(i=0;i<6;i++){
printf("flash_read %d\n",ceshiPrint[i]);
} return 0;
}

运行结果:

book@ubuntu:/home/linux_c/thread$ ./memcpy 

memcpy 1234

memcpy 4321

memcpy 5678

memcpy 8765

memcpy 6789

memcpy 9876

flash_read 1234

flash_read 4321

flash_read 5678

flash_read 8765

flash_read 6789

flash_read 9876

05-11 21:55