C 庫函數 void *memcpy(void *str1, const void *str2, size_t n)
從存儲區 str2 複製 n 個字符到存儲區 str1。
1.從最初開始複製
const char str1[50]="1234567890";
char str2[50];
memset(str2,0,50);
memcpy(str2,str1,3);
printf("str2=%s-end\n",str2);
輸出:123-end
2.從指定位置開始複製
memcpy(void *str1, const void *str2+x, size_t n)
從存儲區 str2 第x位開始複製 n 個字符到存儲區 str1。
const char str1[50]="1234567890";
char str2[50];
memset(str2,0,50);
memcpy(str2,str1,3);
printf("str2=%s-end\n",str2);
輸出:234-end
3.覆蓋原來的字符
從y位開始覆蓋str1,從x位開始到str2取數據
memcpy(void *str1+y, const void *str2+x, size_t n)
const char str1[50]="1234567890";
char str2[50]=“^^^^^”;
memcpy(str2+1,str1+1,3);
printf("str2=%s-end\n",str2);
輸出:^234^-end