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

파이팅님의 프로필 이미지
파이팅

작성한 질문수

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

7.9 조건 연산자

if

작성

·

268

1

1014.png7.9 조건 연산자 6:10 질문입니다

위에서 사실이면 true가 is_even에 대입되고, 거짓이면 false가 대입되는거잖아요

그런데 아래 if(is_even)에서 (is_even==true) 이렇게 안들어가고 is_even만 들어가는 이유가 뭔가요?

is_even만 쓰면 true일때인지 false일때인지 알 수 없는거 아닌가 생각이들어서요..!

답변 1

1

안녕하세요, 답변 도우미 Soobak 입니다.

 

C언어에서 if 조건문 안의 값이 true 이면, 조건문을 만족시킨다는 것을 알고 있기에,

조건문 안의 변수만으로도 조건문의 조건을 충분히 판별할 수 있습니다.

 

즉, if(isEven)if(isEven == true) 는 기능적으로 동일합니다.

후자와 같이 조건을 명시적으로 작성하시는 것이 가독성을 높이는 데에 도움을 줄 수도 있고,
전자와 같이 사용하여 간결함과 직관성을 추구할 수도 있습니다.
코드를 작성하는 개발자의 스타일과 코드의 가독성 등을 고려하셔서 상황에 맞게 선택하시는 것이 좋습니다.

파이팅님의 프로필 이미지
파이팅

작성한 질문수

질문하기