void mymemcpy(void *dst, void *src, unsigned int size) 
  int i; 
  char *a = (char *)src; 
  int pad = size%sizeof(int); 
  for(i = 0; i < size/sizeof(int); i++) 
  { 
    *(int *)dst = *(int *)src; 
    *(char *)dst +=4; 
    *(char *)src +=4; 
  } 
  for (i = 0; i < pad; i++) 
  { 
    *(char *)dst = *(char *)src; 
        dst = (int *)dst + 1;
        src = (int *)src + 1;
  } 

VS2008 기준. 

강조한 부분이 고친 부분인데

걍 바로 캐스팅하면 l-value 에러 나면서 컴파일 안됨 ㅇㅇ

참 귀찮단 말여.... 컴파일러 옵션 건드리는거 보단 저게 편할듯.