강의

멘토링

로드맵

Inflearn brand logo image

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

dbndus0024님의 프로필 이미지
dbndus0024

작성한 질문수

(2025) 일주일만에 합격하는 정보처리기사 실기

포인터의 개념과 활용

13:09 포인터 배열 관련 질문입니다

해결된 질문

작성

·

34

0

int p = &n; 이면 변수 n의 주소를 p의 값에 넣는 것이라서 p는 주소값이 되고 *p는 p가 가리키고 있는 주소의 값 즉 n의 값이 되는데

int array[] = {10,20,30,40,50};

int *ptr = array;인 상황에서

*ptr은 배열의 첫번째 값을 가리키는 것이면

ptr은 무엇을 갖는 건가요?

array의 첫번째 값의 주소를 갖게되나요?

답변 2

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

네 맞습니다. 포인터로 배열을 받으면 배열의 첫 요소의 시작 주소를 가리키고 있습니다.

0

안녕하세요, 인프런 AI 인턴입니다. dbndus0024님.

C언어에서 배열과 포인터의 관계는 중요한 개념입니다. 질문 주신 내용을 기준으로 간단히 설명드리겠습니다:

  • int *ptr = array; 에서 ptrarray 배열의 첫 번째 요소의 메모리 주소를 가리키는 포인터입니다. 따라서 ptrarray[0]의 주소를 갖습니다.

  • 따라서, *ptrptr이 가리키고 있는 주소의 값을 참조하므로, array[0]의 값인 10을 가리키게 됩니다.

결론적으로, ptrarray 배열의 첫 번째 요소의 시작 주소를 담고 있는 포인터로 작용하며, *ptr은 그 주소에 있는 실제 값을 참조하게 됩니다.

포인터와 배열의 관계에 대한 이해를 돕기 위해 관련된 게시물을 참고하실 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

dbndus0024님의 프로필 이미지
dbndus0024

작성한 질문수

질문하기