인프런 커뮤니티 질문&답변

neo2님의 프로필 이미지
neo2

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

5-M

참조에 의한 호출 질문합니다.

작성

·

198

·

수정됨

0

선생님의 코드를 기반으로, struct를 사용하지 않고 구현하려고 합니다.

move 함수의 인자로 배열을 참조로 전달하고자 했습니다.

void _move(int arr[24][24]) {
    int temp[24][24];
    for(int i = 0; i < n; i++){
        int c = -1, d = 0;
        for(int j = 0; j < n; j++){
            if(arr[i][j] == 0) continue;
            if(d && arr[i][j] == temp[i][c]) temp[i][c] *= 2, d = 0;
            else temp[i][++c] = arr[i][j], d = 1;
        }
        for(c++; c < n; c++) temp[i][c] = 0;
    }
    memcpy(arr, temp, sizeof(arr));
}

이런 식으로 코드를 짜봤는데 memcpy 에서 에러가 발생합니다.

참조에 의한 호출로 인해 에러가 발생한 걸까요?

이 에러를 어떻게 해결할 수 있을까요?

답변 1

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 neo님 ㅎㅎ

전체적인 코드를 올려주셔야 제가 확인할 수 있을 것 같습니다.

댓글로 링크 남겨주세요.(0주차 - 질문하는 법 확인)

일단은요.

void _move(int arr[24][24]) {
    int temp[24][24];

이거 지역변수로 설정할 때는 쓰레기값이 들어가기 때문에 0으로 초기화하는 부분이 필요할 것같습니다.

감사합니다.

neo2님의 프로필 이미지
neo2

작성한 질문수

질문하기