Notice
Recent Posts
Recent Comments
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

SYDev

C++ Chapter 02-2 : 자료형 Bool 본문

Programming Lang/C++

C++ Chapter 02-2 : 자료형 Bool

시데브 2023. 7. 6. 11:44

키워드 True, False

 키워드 true는 '참', false는 '거짓'을 의미한다.

 

 다음 예제를 살펴보자.

#include <iostream>
using namespace std;

int main(void)
{
    int num = 10;
    int i = 0;

    cout<<"True : "<<true<<endl;
    cout<<"False : "<<false<<endl;

    while(true)
    {
        cout<<i++<<" ";

        if(i>num)
            break;
    }
    cout<<endl;

    cout<<"sizeof 1: "<<sizeof(1)<<endl;
    cout<<"sizeof 0: "<<sizeof(0)<<endl;
    cout<<"sizeof ture: "<<sizeof(true)<<endl;
    cout<<"sizeof false: "<<sizeof(false)<<endl;
    
    return 0;
}
True : 1
False : 0
0 1 2 3 4 5 6 7 8 9 10
sizeof 1: 4
sizeof 0: 4
sizeof ture: 1
sizeof false: 1

 true와 false는 각각 1과 0으로 출력되지만 그렇다고 true는 1이 아니고 false는 0이 아니다. ture와 false가 정의되기 이전 참과 거짓을 표현하기 위해서 각각 숫자 1과 0을 사용했기때문에 해당 숫자들이 출력되었을 뿐이다. 따라서 true와 false는 그 자체로 '참'과 '거짓'을 의미하는 데이터로 인식하는 것이 옳다. 

 

자료형 Bool

 bool은 int, double과 마찬가지로 기본자료형의 하나이며, 여기에는 true와 false가 속해있다.

bool isTrueOne=true;
bool isTrueTwo=false;

 다음과 같이 bool형 변수를 선언할 수 있다.

 

 bool형 자료가 어떻게 사용되는지 다음 예제를 살펴보자.

#include <iostream>
using namespace std;

bool IsPositive(int num)
{
    if(num<=0)
        return false;

    else
        return true;
}

int main(void)
{
    bool isPos;
    int num;
    cout<<"Input number : ";
    cin>>num;

    isPos=IsPositive(num);
    if(isPos)
        cout<<"Positive number"<<endl;
    else
        cout<<"Negative number"<<endl;

    return 0;
}
Input number : 1
Positive number

출처 : 윤성우, <윤성우의 열혈 C++ 프로그래밍>, 오렌지미디어, 2010.05.12