17강 포인터 조작과 출제패턴 / 08:40 / 메모리주소 관련 문의
안녕하세요.
영상에서 선언해 주신 str[], ptr_a, ptr_b 3개 변수의 메모리주소에 대해 문의드립니다.
char str[] = "Hello";
char *ptr_a = str;
> 포인터변수 ptr_a의 메모리주소는 배열변수 str과 동일하다.
char **ptr_b = &ptr_a;
> 이중포인터변수 ptr_b의 메모리주소는 포인터변수 ptr_a의 메모리주소와 동일하다.
이렇게 되면 str, &ptr_a, &ptr_b가 모두 동일한거 아닌가요?
이중포인터에 대해 이해가 부족해서 질문이 생겼을수도 있을거 같긴 한데, 영상 보면서 그때그때 궁금한게 생기면 일시정지하고 질문을 남기고 있어서 혹시 뒤에 설명해 주시는 내용이더라도 양해 부탁드립니다.
답변 2
0
안녕하세요, 영상을 조금 잘못 이해하신 듯 합니다.
우선 "포인터 변수 ptr_a의 메모리 주소는 배열 변수 str과 동일하다."가 틀렸습니다.
ptr_a는 그것대로 메모리 주소가 있고요, ptr_a가 가지고 있는 "값"이 str배열의 시작 주소입니다.
C언어에서 있는 모든 변수는 각자의 메모리 주소가 있습니다. 그러지 않고서는 메모리 상에서 동작하지 않을테니까요. 포인터 변수는 단순히 메모리 변수를 값으로 가질 수 있는 변수입니다. 그게 끝입니다.
나머지는 문법만 다른 것입니다.
마찬가지로 이중 포인터인 ptr_b도 마찬가지입니다. 그 변수에 해당하는 메모리 주소는 별도로 있고요.
ptr_b가 가지고 있는 값이 ptr_a의 메모리 주소입니다.
생각보다 단순합니다.
질문은 많이 해주세요.
0
안녕하세요, 인프런 AI 인턴입니다. 태0님.
질문해주신 부분은 포인터와 메모리 주소의 이해와 관련된 부분으로, C언어에서 흔히 헷갈리기 쉬운 개념입니다. 각 변수의 메모리 주소와 관련해 설명드리겠습니다.
char str[] = “Hello”;
str배열 자체는 여러 글자가 저장된 메모리의 시작 주소를 가집니다.str의 이름 자체로 배열의 시작 주소를 가리킵니다. 따라서 배열의 시작 요소인'H'의 메모리 주소를 나타냅니다.
char *ptr_a = str;
ptr_a는str의 시작 주소, 즉 배열의 첫 번째 요소'H'의 주소를 가리킵니다.ptr_a자체의 메모리 주소와str의 메모리 주소는 다릅니다.ptr_a에 저장된 값이str배열의 시작 주소와 같은 값을 가진다는 뜻입니다.
**char ptr_b = &ptr_a;
ptr_b는 포인터 변수ptr_a의 주소를 저장합니다. 즉,ptr_b는ptr_a가 저장된 메모리 위치를 가리키고 있습니다.ptr_b자체의 주소는ptr_a의 주소와는 다릅니다.
정리하자면, str 및 ptr_a는 배열의 첫 번째 요소의 주소와 관련이 있으며, ptr_b는 ptr_a의 주소, 즉 포인터의 주소입니다. 이 때문에 str, ptr_a, &ptr_b는 서로 다른 위치를 가리키는 것입니다.
참고로 이중포인터는 포인터를 가리키는 포인터입니다. 따라서 자료구조나 함수에서 포인터 그 자체를 변경하거나 다루고자 할 때 유용하게 사용됩니다.
유사한 포인터 관련 문의와 답변을 확인하시려면 아래 링크를 참고해 주세요:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
정처기 2026-3 실기 문의
0
72
2
정처기 실기 3회 컴싸 사용 여부
0
43
1
모의고사 1 회 2번문제 중
0
59
2
26-2 이론문제 재탕
1
48
1
26-2년도 코드문제
0
34
0
26-2 코드문제
0
39
1
15분 48초 질문
0
47
2
26-1년도 이론문제 재탕
0
58
1
26-1년도 코드문제 재탕
0
43
0
이론재탕만 눈치챘어도
0
70
1
25-3년도 이론문제 재탕
0
54
1
25-3년도 코드문제 재탕
0
39
0
출력값 문의
0
48
2
25-2 분기커버리지
0
45
0
25-2 이론 재탕
0
62
1
25-1 이론 재탕
0
50
1
서브넷 마스크
0
48
2
모의고사 1회 계산문제 2개 맞았는데
0
67
2
업캐스팅 문제 예시 4번 부모 호출
0
49
2
모의고사 자료 해설이 너무 불친절하네요.
0
93
2
부모의 생성자 출력 관련
0
45
2
24-3 이론파트 재탕문제
0
56
0
누락코드
0
45
1
다차원 배열 포인터 질문있습니다
0
71
3





