57분
57분 필기하신거를 보면 {1, 5, 3, 9, 2} 배열을 int *arr 포인터 변수에 대입하시는데 왜 배열 첫번째 요소의 주소가 대입되는게 아니라 {1, 5, 3, 9, 2} 배열 전체가 대입이 되는건가요?
답변 2
0
배열 첫번째 요소의 메모리 주소나, 배열 전체의 시작 메모리 주소나 같은 이야기입니다.
정확히 말하면 질문자님께서 이해하신 것이 맞습니다!
제가 쓴 건 제 습관 중 하나인데, 결국 그 메모리 주소 뒤로 요소들이 죽 연결된 것이긴 하니까요..ㅎ
0
안녕하세요, 인프런 AI 인턴입니다. sbd님.
C 언어에서 배열의 이름은 배열의 첫 번째 요소를 가리키는 포인터입니다. 질문하신 내용을 통해 포인터와 배열의 기본적인 행동을 이해하는 데 도움을 드리겠습니다.
배열과 포인터의 관계: 배열의 이름은 배열의 첫 번째 요소를 가리키는 포인터로 사용됩니다. 예를 들어,
int *arr에{1, 5, 3, 9, 2}배열 전체를 대입한다고 할 때, 실질적으로는arr포인터가 배열의 첫 번째 요소의 주소를 가리키게 되는 것입니다. 포인터로 배열을 다룰 때,arr는 이제 배열의 처음 주소를 가리키며arr[0]은 배열의 첫 번째 요소인1을 가리키게 됩니다.전체 배열 사용의 이해:
{1, 5, 3, 9, 2}배열 전체가 대입되는 것으로 보일 수 있지만, 포인터가 첫 번째 요소를 가리킴으로써 배열 전체에 접근할 수 있습니다. C에서는 포인터 산술을 통해 배열의 나머지 요소에도 접근할 수 있으므로 마치 전체 배열을 대입한 것처럼 사용할 수 있습니다.
이러한 포인터와 배열에 대한 개념을 좀 더 깊이 이해하고자 하신다면, 관련 질문과 답변을 참고하세요. 특히, 다음의 링크를 통해 더욱 많은 정보를 얻으실 수 있습니다:
- C언어 배열 - 배열과 포인터의 관계를 설명하는 질문입니다.
- 포인터 문제 질문입니다. - 포인터와 배열의 기능을 다루는 또 다른 사례입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
정처기 2026-3 실기 문의
0
83
2
정처기 실기 3회 컴싸 사용 여부
0
50
1
모의고사 1 회 2번문제 중
0
68
2
26-2 이론문제 재탕
1
53
1
26-2년도 코드문제
0
36
0
26-2 코드문제
0
43
1
15분 48초 질문
0
56
2
26-1년도 이론문제 재탕
0
63
1
26-1년도 코드문제 재탕
0
44
0
이론재탕만 눈치챘어도
0
72
1
25-3년도 이론문제 재탕
0
56
1
25-3년도 코드문제 재탕
0
41
0
출력값 문의
0
53
2
25-2 분기커버리지
0
47
0
25-2 이론 재탕
0
66
1
25-1 이론 재탕
0
53
1
서브넷 마스크
0
52
2
모의고사 1회 계산문제 2개 맞았는데
0
67
2
업캐스팅 문제 예시 4번 부모 호출
0
51
2
모의고사 자료 해설이 너무 불친절하네요.
0
93
2
부모의 생성자 출력 관련
0
48
2
24-3 이론파트 재탕문제
0
57
0
누락코드
0
45
1
다차원 배열 포인터 질문있습니다
0
71
3





