[C/C++] 배열을 함수의 매개변수로 사용할때 주의점
배열을 함수의 매개변수로 사용할 경우, C/C++ 에서는 함수 호출 시에 배열에 저장된 값을 전달하지 않고 (값을 복제하여 전달하지 않음) 배열의 주소를 전달하도록 구현되어있다. 아래 코드를 참고하자. #include void test(int tmp[]){ // 주소가 오는거기때문에 int *tmp 로 받을수도 있다. printf("tmp 사이즈 : %d\n", sizeof(tmp)); // 해당 값은 4가 나오며, 이는 포인터 인것을 알 수 있다. printf("함수 안 배열 주소 : %d\n", tmp); // arr 의 주소값이 나온다. tmp[0] = 10; // 함수안에서 값을 변경해도 전체적으로 변경되는지 테스트 } int main(){ int arr[10] = { 9, 1, 2, 4, 5, ..