23:46 부분 포인터 관련 질문
22:14초의 코드에서 %s arr[0][0]의 의미는 포인터 강의에서 배운 바로는 %s는 가리키고 있는 주소의 첫번째 값부터 널문자를 만날때까지 출력한다라고 배워서 Hello를 출력하는 것을 이해했었습니다 하지만 23:46부분에서 포인터를 사용할때는 arr[0][0][0]을 출력할때는 Hello중 H를 가리키는 주소를 가지고 있는건가요? 그럼 arr[0][0]과 같은 값을 가리키고 있는건데 제가 잘못 알고 있는건지 궁급합니다
답변 2
0
안녕하세요, 질문에 답변드립니다.
질문 속의 문장) 22:14초의 코드에서 %s arr[0][0]의 의미는 포인터 강의에서 배운 바로는 %s는 가리키고 있는 주소의 첫번째 값부터 널문자를 만날때까지 출력한다라고 배워서 Hello를 출력하는 것을 이해했었습니다.
-> 네 맞습니다. 첫 번째 배열은 {"Hello", "World"}까지 간 것이고 그 다음에는 "Hello"까지 갔으니 %s로 모두 출력하는 것입니다.
여기서 기억하셔야 할 것이 있습니다. 본질적으로 우리가 정의한 "Hello"는 무엇인가요?
'문자'들이 모여있는 배열입니다. 이 자체도 당연히 인덱스로 접근할 수 있을 것입니다.
배열(Array)이니까요.
문자로 된 배열은 인덱스로도, 포인터로도 접근할 수 있습니다.
애초에 배열이라는 것 자체가 우리가 앞서 배운 것처럼 메모리 주소를 죽 정렬되어 위치한 것 뿐입니다.
C언어는 이 2가지 개념이 혼재된 프로그래밍 언어입니다.
Hello까지 갔으니 여기에서 [0]을 접근하면 'H'를 꺼내옵니다.
그것을 문자 1개로 출력해야하니 %c로 받아야 합니다.
Hello 그 자체는 배열이지만, 인덱스로 접근하기 때문에 값으로 인식하시면 됩니다.
그 외에 더 헷갈리게 생각하실 필요 없습니다.
0
안녕하세요, 인프런 AI 인턴입니다. 진우님.
포인터와 문자열 출력에 대한 C 언어 개념이 혼란스러울 수 있는 부분에 대해 설명해드리겠습니다. printf("%s", arr[0][0]);에서 %s는 해당 메모리 주소에서 시작해 널 문자를 만날 때까지 문자열을 출력합니다. 이는 arr[0][0]이 문자열의 처음을 가리키고 있는 주소라는 의미이며, “Hello”와 같은 문자열 전체를 출력할 수 있는 이유입니다.
23:46의 경우, arr[0][0][0]는 배열 또는 포인터의 첫 번째 문자를 직접 참조합니다. H는 “Hello” 문자열의 첫 번째 문자이므로, arr[0][0][0]는 H를 가리키며, 해당 값만 출력하면 단일 문자 H가 됩니다. arr[0][0]은 H가 포함된 문자열의 시작 주소를 지칭하고 있으므로 이 부분에서 혼란이 있는 것일 수 있습니다.
더 많은 정보를 이해하려면 유사한 질문과 답변을 참고해 보시기 바랍니다:
위 링크들은 포인터와 문자열 출력을 보다 구체적으로 이해하는 데 도움이 될 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
필기자료 사라졌나요?(실기 일주일만에 안돼서 재도전-_-)
0
42
2
26년 1회 실기 해설 강의
0
59
2
53번 4-1 자료 오류 있는 것 같습니다.
0
72
2
7번문제
0
59
2
C언어 변형문제 9번문제 Pdf 수정요청
0
47
2
메서드 오버드라드
0
47
2
실수
0
46
1
공부 우선순위 우선강의 알려주세요
0
88
1
생성자 호출순서 강의 10번 문제 30분대 질문입니다
0
48
2
25년 2회 기출 5:40 질문입니다.
0
42
2
모의고사1회 3번 파이썬문제
0
74
2
C언어 출제변형 6번 문제
0
50
2
c언어 출제변형 강의 질문
0
31
2
28:40
0
33
2
C : 언어 배열과 문자열 수업자료
0
29
2
파이썬 리스트, 딕셔너리 질문
0
42
2
모의고사 관련 질문 건
1
69
3
자료 내용 오류
0
64
2
정적 변수, 정적 메서드(static) v2
0
48
2
v1.2 와 v0.91 PDF
0
101
1
업캐스팅 (부모형태, 자식생성자)
0
51
2
정보처리산업기사 준비중입니다.
0
74
2
실기 D -6
0
105
2
(기출) 2024년 2회 기출문제 - 이론 포함 22분32초 질문입니다
0
57
3





