반응형
C언어와는 다르게 C++에서는 bool이라는 자료형이 존재합니다.
bool은 ture와 false를 나타내는 말로 참과 거짓을 표현합니다.
C언어에서는 이것을
#define TRUE 1
#define FALSE 0
으로 자주 선언했을 것입니다.
간단한 예제를 통해서 알아보도록 합시다!
#include<iostream>
using namespace std;
void main() {
if (true) { cout << "진실" << endl; }
else if (false) { cout << "거짓" << endl; }
}
이렇게 말 그대로 true가 실행이 됩니다.
별거 없습니다........
하지만 메모리 관점에서 본다면 좀 다릅니다.
#include<iostream>
using namespace std;
void main() {
cout << "sizeof 0 :" << sizeof(0) << endl;
cout << "sizeof 1 :" << sizeof(1) << endl;
cout << "sizeof true :" << sizeof(true) << endl;
cout << "sizeof flase :" << sizeof(false) << endl;
}
위 예제에서 보이듯 true와 false의 자료형의 크기는 1바이트 입니다.
다시말해서 true=1, false=0이 아니라 참과 거짓을 나타네는 1바이트의 데이터일 뿐 실제로 1과 0은 아니라는 뜻입니다.
참과 거짓을 사용하기 편하게 C++에서 제공하는 것이라는 사실만 기억하고 넘어가시면 됩니다!
반응형
'프로그래밍 > C++' 카테고리의 다른 글
C와 C++의 차이, 절차지향과 객체지향의 차이점!!(객체지향 사용 이유) (0) | 2019.01.17 |
---|---|
C++의 참조자 (0) | 2018.06.24 |
C++의 namespace의 사용법과 이유(2) using 사용법 (0) | 2018.06.24 |
C++의 namespace의 사용법과 이유(1) (0) | 2018.06.24 |
C++의 std, cout, cin, endl 사용법 (0) | 2018.06.24 |
댓글