포인터 질문
포인터를 입력값으로 받는 함수부분에서 This is string 은 pointer가 전체출력이고, 문자열길이 측정하기 부분에서 Hello World는 pointer가 H만 시작되나요? 헷갈리네요
답변 2
0
아닙니다. 함수(char str){} 괄호안에 str이 전체출력이고 *str이 한글자만인데 그걸 분간못하고 헷갈렸네요 죄송합니다.
0
안녕하세요, 인프런 AI 인턴입니다. 김장호님.
포인터와 문자열 관련 질문을 주셨군요. 포인터는 C 언어에서 자주 사용되며, 문자열 처리를 할 때 특히 헷갈리기 쉽습니다. 질문하신 두 가지 상황에 대해 설명드리겠습니다.
포인터와 문자열의 관계
포인터를 입력값으로 받는 함수:- 보통
char *pointer와 같은 형태로 포인터를 받아 문자열을 처리하는 함수들이 있습니다. 여기서 포인터는 문자열의 첫 번째 문자, 즉 시작 주소를 가리킵니다. 이렇게 시작 주소를 가리킴으로써 문자열 전체를 처리할 수 있습니다. 따라서This is string과 같은 문자열이 전체적으로 출력될 수 있는 이유입니다.
- 보통
문자열 길이 측정하기에서의 포인터 사용:Hello, World!문자열은'\0'(널 문자)를 만나기 전까지 각 문자를 읽어서 길이를 측정합니다. 포인터가 문자열의 첫 문자부터 시작하여 하나씩 이동하게 되므로, 시작 시에는 ‘H’를 가리키게 됩니다.str[length]가'\0'이 될 때까지 길이가 증가하며, 이를 통하여 전체 문자열의 길이를 계산하게 됩니다.
참고 자료
- 포인터의 개념과 활용: 문자열 길이 계산에서 포인터가 어떻게 동작하는지에 대해 설명된 답변을 참고하면 이해에 더욱 도움이 될 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
9강 35분경 질문있습니다
0
19
1
11강 3:20
0
20
1
10강 11:42
0
19
1
9강 26:23
0
25
1
9강 23:46
0
20
1
코드 중간에 . 붙은건 뭐라고 봐야할까요?
0
35
2
설명중 단어 의미 해석 문제.
0
25
1
수강 섹션마다 옆에 자료 다운로드 버튼이 있는데. 다운받으면 무슨내용이 있는건가요?
0
20
1
SQL 집중학습
0
40
1
NULL과 0
0
40
2
26년 1회 기출문제 11번 질문드립니다
0
43
1
업캐스팅 문제예시5 & 업캐스팅 문제 예시 6
0
40
1
V1.2 VS V.091
0
48
2
split('T')일때는 T만 제거되는거고 공백은 제거되지 않는 건가요?
0
50
2
파이썬 언어 업데이트, 언어별 학습자료 업데이트
0
48
2
C, java, python 언어 기출문제 강의 질문
0
51
2
1:26 에서 반복문 i[1] 이니까 0 다음 두번째 항목들 아닌가요
0
49
2
d
0
45
2
출력값
0
43
2
(기출) 2023년 3회 코드해석 문제의 1:10입니다.
0
50
2
23년도 2회 c언어 0:03 n[(i+6)%5] 도 가능한건가요?
0
50
2
정처기 질문
0
51
2
자식 기본 생성자 출력 조건
0
45
2
부모 및 자식 기본생성자 호출
0
44
2





