inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2027 대비!) 일주일만에 합격하는 정보처리기사 실기

함수(메서드) 선언과 호출

length 질문

해결된 질문

120

dbgud85

작성한 질문수 11

0

14:32 초 부근에 length 를 함수부분에서 널값이 있다

검색한다음에 호출하는것으로 이해했습니다.

 

궁금한점은....

Hello, world!에서 ","다음이 공란(널값)인데 수행이 멈추고

6이 출력되야 하지 않나 헷갈려서 문의드립니다.

 

정답은 13 공란이 포함되어 있던데 헷갈리네요^^;

python java c 정보처리기사

답변 2

0

주말코딩

안녕하세요,

 

우리가 흔히 스페이스로 치는 띄어쓰기와 null은 아예 다른 문자입니다.

띄어쓰기는 띄어쓰기 문자가 따로 있습니다. 눈에 보이지 않을 뿐이죠.

 

null 문자는 아예 출력해도 이상하게 나옵니다.

정상적인 문자열에서 띄어쓰기는 하나의 문자로 생각하셔야 합니다.

 

두 가지는 서로 아예 다른 것입니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. dbgud85님.

질문 주신 ‘C언어에서 문자열 길이 계산’에 관한 부분은 흔히 헷갈릴 수 있는 주제입니다. 특히 문자열에서의 공백과 null 문자('\0')의 차이를 이해하는 것이 중요합니다.

문자열 길이 계산에서의 null 문자

  • null 문자('\0')는 문자열의 끝을 알리는 특수한 문자로, 알파벳이나 기호와는 다릅니다. 이는 배열이 끝났음을 컴파일러에게 알려주는 역할을 합니다.
  • 예를 들어, 문자열 "Hello, World!"은 사실 H, e, l, l, o, ,, (스페이스), W, o, r, l, d, !, 그리고 마지막에 눈에 보이지 않는 '\0'로 끝납니다.

strlen의 동작 방식

  • strlen 함수는 문자열에서 null 문자를 만나기 전까지의 문자 개수를 세어 길이를 반환합니다.
  • 따라서 "Hello, World!"의 케이스에서는 실제로 13을 반환합니다. 이는 스페이스(공란)도 하나의 문자로 세며, '\0'를 포함하지 않는다는 점에서 유래합니다.

참고자료

이와 유사한 다른 질문들에서도 관련된 주제를 다뤄 유익한 정보를 얻을 수 있습니다:
- 배열과 문자열 13:54초 출력결과 문의 - strlen과 sizeof의 차이점을 설명하며 출력 예제를 제공합니다.
- 포인터의 개념과 활용 - 문자열 길이 계산과 null 문자의 처리에 관한 설명이 나와 있습니다.

이 설명이 도움이 되셨길 바랍니다. 저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

정처기 2026-3 실기 문의

0

84

2

정처기 실기 3회 컴싸 사용 여부

0

51

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

64

1

26-1년도 코드문제 재탕

0

44

0

이론재탕만 눈치챘어도

0

72

1

25-3년도 이론문제 재탕

0

57

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

95

2

부모의 생성자 출력 관련

0

48

2

24-3 이론파트 재탕문제

0

57

0

누락코드

0

45

1

다차원 배열 포인터 질문있습니다

0

71

3