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

aaa164949님의 프로필 이미지
aaa164949

작성한 질문수

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

6.5 사실과 거짓

질문이요

작성

·

146

0

5분 14초 쯤에  while()안에 들어가 있는 i가 while 입장에서 사실이다라는 게 정확히 뭔말인지 잘 모르겠습니다. 그리고 while안에 관계식도 아니고 그냥 변수 하나만 있어도 되나요?

답변 2

1

조건식의 결과가 0 만 아니면 다 참입니다. 이건 while문 뿐만 아니라 if도 마찬가지입니다. 

변수 하나만 있어도 됩니다. 그 변수의 값이 0 이면 False 인 결과일 테고, 0 이 아닌 값이기만 하면 True 인 결과라고 생각하시면 됩니다.

i 는 0 이 아닌 -5 값을 가지고 있으므로 while(i), 즉 while(-5)는 참입니다. i가 while 입장에선 사실이라는게 i는 while 입장에선 True 라는 뜻에서 말씀하신 것 같습니다. 아무튼 i는 0이 아닌 값을 가지고 있으므로 while 조건문은 참이되고 따라서 while 반복문을 돌게 됩니다.  i가 0이 되면 while(0) 이고 이건 거짓이 되어 while문을 더 이상 돌지 않게 됩니다.

0

aaa164949님의 프로필 이미지
aaa164949
질문자

감사합니다!

aaa164949님의 프로필 이미지
aaa164949

작성한 질문수

질문하기