찾다

 >  Q&A  >  본문

c++ - 이 배열 비교 함수의 반환 값이 변경되지 않은 이유는 무엇입니까?

연습 중에 배열 비교 함수를 작성해야 합니다

으아악

두 배열의 값이 어떻게 바뀌어도 이 함수의 출력 결과는 변하지 않습니다. 이유는 무엇인가요? ...감사합니다~

巴扎黑巴扎黑2738일 전722

모든 응답(2)나는 대답할 것이다

  • 为情所困

    为情所困2017-05-16 13:26:28

    함수 매개변수 전달에서 배열은 포인터 형태로 함수에 전달되며 값에 의한 호출은 없습니다. 함수 매개변수에서 int arr[4]는 int *로 변질되고 4는 손실되므로 isEqual 함수의 a는 실제로 배열 a의 첫 번째 주소일 뿐입니다.
    배열 포인터와 배열 크기를 동시에 전달하려면 배열 길이를 함수의 또 다른 형식 매개변수로 사용해야 합니다.
    예:

    으아악

    회신하다
    0
  • 高洛峰

    高洛峰2017-05-16 13:26:28

    두 배열의 길이를 잘못 계산했기 때문입니다

    으아아아

    회신하다
    0
  • 취소회신하다