array_copy1.c
#include <stdio.h> main() { int a[5] = { 1, 2, 3, 4, 5 }; // 배열 a를 선언과 동시에 초기화 int b[5]; // 배열 b 선언 int i; b = a; // 배열 간에 대입 연산자 사용 for (i = 0; i < 5; i++) { printf("a[%d] = %d b[%d] = %d\n", i, a[i], i, b[i]); } }
그림 7-13 | 오류 발생!
정상적으로 수행될 것이라 예상했는데 결과는 오류가 발생했네요. 오류의 원인은 ‘배열은 한 번에 모든 배열 요소의 값을 대입시킬 수 없기 때문’입니다. 배열 변수의 값을 복사하고자 한다면 for 반복문을 이용하여 각각의 배열 요소를 복사해야 합니다.