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

용개형멋져님의 프로필 이미지
용개형멋져

작성한 질문수

홍정모의 따라하며 배우는 C언어

10.14 2차원 배열과 포인터

4분 45초경 질문

작성

·

291

·

수정됨

2

arr과 arr[0]모두 arr[0][0]을 가리키지만

arr의 타입은 int (*)[3]이고

arr[0]의 타입은 int* 이다.

따라서 arr + 1은 &arr[0] + 1이고

arr[0] + 1은 &arr[0][0] + 1이다.

이게 맞나요?

 

arr과 arr[0] 모두 arr[0][0]을 가리키는데

포인터 산술 연산을 하면 결과가 다르게 나와서 헷갈렸는데

수박 선생님이 전에 답변해 주신 걸 보고 나름 이해를 해봤어요

선생님이 아마 arr과 arr[0]의 자료형이 다르다고 하셨던 거 같은데 맞나요?

그 때 답변을 봐도 제가 이해한 게 맞는 건지 확신이 안 드네요.

답변 1

3

안녕하세요, 답변 도우미 Soobak 입니다.

 

네, 정확하게 이해하고 계십니다!!
동일한 주소를 가리키는 포인터들이라도, 각 포인터의 자료형(타입)에 대한 차이 때문에 포인터 연산의 결과가 달라지게 됩니다.

잘 이해하고 계십니다!

 

추가적으로, 저는 선생님이 아니므로, 질문 답변 도우미라고 불러주셨으면 좋겠습니다.
햇갈리셨던 개념을 잘 이해하신 것 같아서 다행이네요.
좋은 질문 감사드립니다.

매번 좋은 답변을 달아주시는 게 감사해서 존칭으로 부르고 싶어서 그렇게 한건데 ㅎㅎ..

앞으로는 그냥 수박님이라고 부르겠습니다

아이고, 마음은 너무 감사드립니다. 🥰

오해의 소지가 있을 수 있으니 조심스럽게 부탁을 드려보았는데, 재미있게 답글 달아주셔서 감사드립니다.
수박님이라고 불러주셔도 기분 좋을 것 같습니다. 🫡🍉😁
질문자님의 감사한 마음 덕분에 행복해지고 뿌듯해지네요.
진심으로 감사합니다.

행복한 밤 되시길 바랍니다!
궁금증이 있으시면 또 편하게 질문해주세요!

용개형멋져님의 프로필 이미지
용개형멋져

작성한 질문수

질문하기