inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

포인터의 개념과 활용

포인터의 개념과 활용

해결된 질문

202

ghkd1118

작성한 질문수 9

0

15:25 예시 세번째 질문입니다.

문자열의 길이 계산에서

length는 0으로 선언되었는데

str[length]는 위에있는 Hello, World! 문자의 길이에 맞춰서 length 값을 1씩 증가하되 시작점이 0이라는 걸까요?

널값을 어떻게 만난다는건지 잘 이해가 안가서요.

 

문자열 길이계산부분만 다시 설명 부탁드립니다.

 

python java c 정보처리기사

답변 1

0

주말코딩

안녕하세요, 가장 오른쪽의 예시를 말씀하신 것으로 알고 답변 드립니다.

 

여기서의 핵심은 아래 for문이 아니라 위의 while입니다.

while은 반복문인데, 조건문이 참이 아닐 때까지 계속 반복합니다.

(참인 경우 아래 블럭으로 들어가고, 거짓인 경우에는 블럭을 수행하지 않습니다.)

 

 

지금 보면 while은 length라는 변수에 1씩을 계속 누적하고 있습니다.

(변수++는 후위연산자로서, 값을 1 증가하면서 자기 자신에 그 값을 누적합니다.)

str[length] != '\0'이라는 이야기는 str이라는 배열의 인덱스를 length 변수를 통해 하나씩 증가시키면서 접근하고 있을 때,

어느 순간에는 그 값이 '\0'과 같아지는 순간이 온다는 얘기입니다.

지금 예제의 경우 문자 느낌표(!) 다음이겠죠.

 

'\0'과 같아졌는데, "같지 않다?"를 물어봤으니까 false가 됩니다. == "같니?"를 물어봤을 때 true가 나와야 하니까요. (참고로 C언어에서 true, false는 1, 0을 리턴 합니다.)

 

그래서 그 순간까지의 변수 length를 가지고 아래의 for문의 갯수를 정합니다.

그래서 아래에는 무조건 '\0'이 되기 전까지만 반복하게 됩니다.

 

이해에 도움이 되셨을까요?

정처기 필기 준비할때 이 이론을 다시 외워도 될까요?

0

39

2

조건 반복문 질문: for 문 ?

0

57

1

정처기 26-2회. 9번 질문드립니다!

0

77

1

이론 보면서 질문이 있습니다.

0

70

2

정보처리기사 실기 26년 2회 SRT 스케줄링 문제 단위 질문

0

84

2

유튜브(정보처리기사 실기 | 26년 2회 기출문제 코드 해설)

0

139

2

262 정처기 실기 C언어코딩

0

43

1

정보처리기사 262 실기 Hash(해시) 질문

0

73

2

static 변수 질문입니다.

0

60

2

파이썬 4강 질문입니다.

0

67

2

모의고사 1회 3번문제

0

86

3

41강 30:10

0

64

2

이론 공부법 질문 있습니다.

0

85

2

부모의 생성자 관련 질문

0

62

2

시험지 문제에 필기해도 되나요?

0

85

3

41강 11:23

0

54

2

4강파이썬 질문입니다

0

51

2

try-catch 핸들러명

0

63

2

36강 3:48

0

62

2

35강 18:27

0

65

2

자식 코드 내 super() 생략

0

59

2

출력질문

0

72

2

31강 4:06

0

63

2

파이썬 학습자료가 강의 자료와 다릅니다.

0

93

3