해결된 질문
작성
·
93
·
수정됨
답변 1
0
안녕하세요.
네 맞습니다. 포인터 변수로 받아서 그렇습니다. 지금 함수에서는 무조건 배열을 파라미터로 입력받아야합니다. 이 경우에는 포인터 변수나 배열 형태로 입력 받아야 합니다. int a[]로 넣어도 정상 동작합니다.
지금은 배열의 길이를 해야합니다. sizeof하면 [ int 데이터 크기 X 요소 개수 ]만큼 용량 바이트가 나옵니다. 그렇게 쓰면 틀립니다. 정상적으로 작동하지 않습니다.
길이를 측정하려면 sizeof(myArray) / sizeof(myArray[0]);
이렇게는 할 수 있겠습니다. 그런데, 아마 문제에서 변수로 쓰라고 보기가 나오거나 하지 않을까 싶어요.
먼저 자식생성자를 보고 부모로 넘어가는 것이 편합니다. new 뒤가 어떤 생성자를 호출하느냐이니까 당연히 Car의 문자열 매개변수 1개짜리 생성자를 보러 가시는게 맞습니다.
단순히 '교환' 하는 함수를 뜻하시는 것이면 전역변수로 처리하는 방법도 있긴합니다.
이번 24년 1회 해설영상 한번 보시면 도움될 겁니다.
기본적으로 함수의 파라미터로 받아서 교환하고 싶다면, 포인터 변수로 받아야 한다고 알고 계시면 됩니다. (주소를 넘겨줘야함)
1번 질문에 대한 재질문 입니다
그러면 스왑 변수는 포인터 변수나 배열 2가지로 받는거에 대해선 다 정상적으로 작동한다고 봐야할까요?
그냥 단순int a만 넣으면 적용이 안될거 같아서요..