인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

콩림님의 프로필 이미지
콩림

작성한 질문수

홍정모의 따라하며 배우는 C언어

7.7 논리 연산자 Logical operators

글자세기 관련 질문이 있습니다.!

작성

·

139

3

본 강의의 8분쯤에 while((ch=getchar()) !=PERIOD) 문 안에 if문을 제가 코드를 짰는데요. if((ch=getchar()) !='\n')

이런식으로 했는데 getchar을 사용하니깐 오류가 나고 ch만 했을때는 오류가 안나던데 혹시 if문 안에서 또다시 getchar을 할 경우 왜 오류가 나는지 알려주실 수 있으신가요??

답변 1

2

안녕하세요?

오류가 어떻게 나나요? 

오류가 아니라 결과값이 이상하게 나오는 거라면

한 while loop 안에서 getchar()로 문자를 두 번 읽어서 그래요.

아래 사진 처럼 브레이크 포인트를 설정하고 디버거(F5)로 실행하면서 ch값을 확인해 보세요.

두 번씩 읽기 때문에 문자 네 개를 치면 count가 두 번만 증가합니다.

<사진>

감사합니다.

콩림님의 프로필 이미지
콩림

작성한 질문수

질문하기