inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

C++알고리즘 교안

교안 38p char 질문입니다

해결된 질문

132

sunnyside0102

작성한 질문수 11

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

38페이지의 "char 을 초기화할 때 주의할 점"에 대해 궁금합니다. 코드에서 char a = '\0' 와 char b = 0 라고 선언한 부분이

if(a==b) cout << 1 ; 에서 1이 출력됩니다.

위 설명에선 char 변수를 초기화할 때 특정값으로 하거나, 널 문자를 사용하는 방법 두가지가 있다고 했는데

b는 숫자 0을 대입한 것인지 아니면 "0"을 대입한 건지 헷갈립니다. 당연히 전자라고 생각했는데 if 문에서 둘이 동일하다고 해서 제가 놓친 부분이 있는지 궁금합니다. 만약 후자라면 숫자 0을 대입하는 방법이 궁금합니다

감사합니다

 

c++ 코딩-테스트

답변 1

1

큰돌

안녕하세요 sunny님ㅎㅎ

두가지는 다음과 같은 차이가 있습니다만 동일하다고 보시면 됩니다.

  • char a = '\0';: 이 표현에서 '\0'은 널 문자를 나타내는 문자 리터럴입니다. 널 문자란 문자열의 끝을 표시하는 특수한 문자로, ASCII 값이 0인 문자를 말합니다.

  • char b = 0;: 이 표현에서 0은 정수 리터럴입니다. 문자 타입의 변수를 정수 값 0으로 초기화하는 것으로, 결과적으로 널 문자를 나타냅니다.

잠깐 아스키 코드를 볼까요?

image

지금 보시는 것처럼 아스키코드에서 0은 null을 나타내기 때문에 결과적으로 동일한 의미라고 보시면 됩니다.



또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


 

삼성 코테 없어짐

0

37

1

코딩살구클럽 가입부탁드립니다

0

33

2

코딩살구클럽 가입 요청 확인부탁드립니다

0

32

2

5-S 테스트 케이스 질문

0

36

2

코살 문제풀이 환경

0

49

2

2 - T 오큰수 문제가 있는 것 같습니다.

0

43

1

추천 추가문제들

0

43

2

프로그래머스 코테 환경 관련해서 질문드립니다.

0

48

2

해당 문제에 대한 채점이 코딩살구클럽에서 올바르게 처리되지 않습니다.

0

44

2

균형 이진 트리 설명 시 높이 숫자

0

32

2

4-H 질문드립니다.

0

36

2

1-K 질문드립니다.

0

43

2

대기업 인적성 시험 질문

0

42

2

4-C 질문드립니다

0

43

2

[수학숙제 / BOJ 2870] 채점 서버 오작동

0

40

1

코테 준비 질문

0

53

1

살구클럽가입 요청드려요

0

41

2

1-I 문제 질문

0

45

2

코딩살구클럽 가입

0

59

2

AI 코딩 도구 사용 시 학습 방법 조언

0

55

2

코딩살구클럽 오류

0

64

2

코살클 [3-F 괄호 추가하기] 프라이빗 9번 제보

0

50

1

코딩살구클럽 테스트 케이스 오류 제보

0

55

2

삼성 코딩테스트

0

67

2