작성한 질문수
홍정모의 따라하며 배우는 C언어
10.16 다차원 배열을 함수에게 전달해주는 방법
작성
·
253
0
답변 1
1
원인은 알았는데요. 배열을 포인터 변수에 넣을경우에
넣을 배열이 1차원이든 2차원이던간에
포인터 변수에서는 무조건 1차원으로 인식을하는것 같습니다.
그래서 위의 식이 틀릴 수밖에 없는거고요
혹시 제가 맞게 이해한건지 궁금합니다.
비슷합니다.
매개변수를 int* arr 로 설정을 하셨는데, 이는 하나의 주소값을 담는 하나의 포인터 변수입니다.
지금 int * arr 포인터 변수 하나로 이차원 배열을 참조할 수 있도록 시도를 하신거에요!
int * arr 매개변수에 2차원 배열 arr 값을 대입하였으니 int * arr 는 본인이 저장한 주소값이 2차원 배열의 주소값인지에 대한 정보를 알리가 없습니다! 그저 주소값 하나만 딱 저장할 뿐이죠.
그래서 저렇게 두 번 간접참조하는게 에러가 나는 것입니다.
아 명확하게 정리가 되었습니다. 감사합니다!!
비슷합니다.
매개변수를 int* arr 로 설정을 하셨는데, 이는 하나의 주소값을 담는 하나의 포인터 변수입니다.
지금 int * arr 포인터 변수 하나로 이차원 배열을 참조할 수 있도록 시도를 하신거에요!
int * arr 매개변수에 2차원 배열 arr 값을 대입하였으니 int * arr 는 본인이 저장한 주소값이 2차원 배열의 주소값인지에 대한 정보를 알리가 없습니다! 그저 주소값 하나만 딱 저장할 뿐이죠.
그래서 저렇게 두 번 간접참조하는게 에러가 나는 것입니다.