솔직히 이번거 너무 길다. 길다기 보단 타이핑하기가 짜증난다.
다 쳐보던지 아니면 if문 하나만 만들어서 값만 바꿔보던지...
다 치는게 힘들고 짜증나겠지만 기억에 오래 남지 않을까?
<결과>
논리형 변수 b의 값은 1
논리형 변수 j의 값은 0
10 > 5 의 식은 참입니다.
10 > 20 의 식은 거짓입니다.
-1 은 참입니다.
제목을 논리형 변수 이해하기 (bool) 이라고 써놨다. 근데 책에 본문에 보면 논리형 변수라는건 사실 존재하지 않아요.
이게 무슨 소리인가?
bool 이라는건 boolean 이라고 해서 true 와 false 라고 참과 거짓을 의미하는 데이터 타입이다.
c언어에서는 bool이 없어서 정수형 변수를 논리형 변수처럼 사용하는 것이다.
- b = 10 > 5;
이 부분은 참이다. 저번에 알려준 디버그 기능을 사용해 보면 b의 값이 1이라고 나온다.
- j = 10 > 20;
이 부분은 거짓이다. 저번에 알려준 디버그 기능을 사용해 보면 j의 값이 0이라고 나온다.
- if()
if는 저번에도 말했지만 참이면 if문안에 있는 있는 걸 실행하고 거짓이면 else 문에 있는 걸 실행한다.
if는 0을 제외한 모든 값을 참으로 본다. 그래서 b와 -1을 참으로 보고 j는 거짓으로 생각한다.
-1말고도 다른 값을 넣어보자. 0이 아니면 다 참으로 인식한다.
아까도 말했지만 논리형 변수라는건 없지만 int형으로 처리를 해서 논리형 변수처럼 사용 한 것이다.
'c기초' 카테고리의 다른 글
016. 문자형 상수 이해하기 (char) (0) | 2020.03.17 |
---|---|
015. 문자열형 변수 이해하기 (char*) (0) | 2020.03.17 |
013. 실수형 변수 이해하기(double) (0) | 2020.03.17 |
012. 정수형 변수 이해하기(int) (0) | 2020.03.17 |
011. 문자형 변수 이해하기(char) (0) | 2020.03.17 |