#inlcude <stdio.h>
#inlcude <stdlib.h>
#inlcude <string.h>
int main() {
char *buff = (char*)malloc(sizeof(char) * 5);
char *str = "abcdefghijklmnopqrstuvwxyz";
memcpy (buff, str, strlen(str));
while(*buff) {
printf("%c" , *buff++);
}
printf("\n");
return 0;
}
このコードは、文字列「abc...xyz」全体を出力します。しかし、「buff」にはその文字列を保持するのに十分なメモリがありません。memcpy() はどのように機能しますか? realloc() を使用しますか?