C의 bool은 true 또는 false의 두 값 중 하나를 보유할 수 있는 대부분의 기본 데이터 유형입니다. 논리 값을 나타내는 데 사용되며 프로그래밍에서 if-else 문, while 루프 및 for 루프와 같은 의사 결정 문에서 실행 흐름을 제어하기 위해 일반적으로 사용됩니다. 이번 글에서는 C에서 bool 데이터 타입을 사용하는 방법을 살펴보겠습니다.
C의 부울
C에서 bool 데이터 유형은 내장 데이터 유형이 아닙니다. 그러나 C 언어용 C99 표준은 bool 변수를 지원합니다. 부울은 값을 true-false, 0-1 또는 yes-no로 저장할 수 있습니다. 아래와 같이 다양한 방법을 사용하여 C로 구현할 수 있습니다.
- 헤더 파일 stdbool.h 사용
- 열거형 사용
- 정의를 사용하여 부울 값 선언
1. 헤더 파일 stdbool.h 사용
C에서 bool을 사용하려면 헤더 파일 stdbool.h를 포함해야 합니다. stdbool.h 라이브러리를 포함시킨 후에는 stdio.h 라이브러리에서 부울을 사용할 수 없으므로 데이터 유형을 사용할 수 있습니다.
다음은 C에서 부울을 구현한 것입니다.
씨
// C Program to implement> // Boolean data type> #include> // Main Function> int> main()> {> >// Boolean data types declared> >bool> a =>true>;> >bool> b =>false>;> >printf>(>'True : %d
'>, a);> >printf>(>'False : %d'>, b);> >return> 0;> }> |
>
>산출
True : 1 False : 0>
위 프로그램을 .c 파일로 저장하면 컴파일되지 않습니다. 하지만 .cpp 파일로 저장하면 제대로 작동합니다.
2. 열거형 사용
또는 열거 유형을 사용하여 C에서 bool을 구현할 수 있습니다. 여기서는 라이브러리를 import하는 대신 bool을 데이터형으로 사용하도록 열거형을 선언합니다.
다음은 열거형 접근 방식을 사용하는 예입니다.
씨
#include> typedef> enum> {>false>,>true> }>bool>;> int> main()> {> >bool> a =>true>;> >bool> b =>false>;> >printf>(>'True : %d
'>, a);> >printf>(>'False : %d'>, b);> >return> 0;> }> |
>
>산출
True : 1 False : 0>
3. Define을 사용하여 부울 값 선언
이 경우 false 값에는 정수값 0이 할당되고, true 값에는 정수값 1이 할당됩니다. 0(false) 또는 1(true) 값을 갖는 int 또는 char을 사용할 수도 있습니다. C에서 bool 데이터 유형을 나타냅니다.
다음은 위의 접근 방식을 구현한 것입니다.
씨
#define bool int> #define false 0> #define true 1> int> main()> {> >bool> a =>true>;> >bool> b =>false>;> >printf>(>'True : %d
'>, a);> >printf>(>'False : %d'>, b);> >return> 0;> }> |
>
>산출
True : 1 False : 0>
조건문에서 Bool 사용
bool 데이터 유형은 if-else 문과 같은 조건문에서 일반적으로 사용됩니다. a가 b보다 크거나 b가 a보다 큰 경우와 같은 조건은 부울을 사용하여 구현할 수 있습니다. == ,> , < , != 등과 같은 조건부 연산자를 사용하는 이러한 조건은 부울 값을 반환합니다.
다음은 조건문의 구현입니다.
씨
// C Program to implement> // conditional statements> #include> #include> // Main Function> int> main()> {> >// Integers declared> >int> a = 3;> >int> b = 4;> >// Conditional Statements> >if> (a>b) {> >printf>(>'a is greater
'>);> >}> >else> {> >printf>(>'a is smaller
'>);> >}> >printf>(>'%d is the result of a>ㄴ'>, a>b);> >return> 0;> }> |
>
>산출
a is smaller 0 is the result of a>비>
루프에서 bool 사용
bool 데이터 유형은 while 루프 및 for 루프와 같은 루프에서도 사용됩니다. 조건문은 루프와 함께 사용되는 가장 중요한 부분 중 하나입니다. 부울 값을 반환하는 조건문을 사용하지 않고는 루프의 중단점을 정의할 수 없습니다. 조건문이 없으면 루프는 무한 루프가 됩니다.
다음은 위의 접근 방식을 구현한 것입니다.
씨
// C Program to demonstrate> // Using bool in loops> #include> #include> // Main Function> int> main()> {> >// boolean declared> >bool> a =>true>;> >int> i = 0;> >// while loop> >while> (a) {> >printf>(>'i is %d
'>, i);> >i++;> >// Conditional statement returning> >// true or false> >// Breaking point for loop> >if> (i>5) {> >a =>false>;> >}> >}> >return> 0;> }> |
>
>산출
i is 0 i is 1 i is 2 i is 3 i is 4 i is 5>
함수 반환 유형으로 bool 사용
bool 데이터 유형을 함수 반환 유형으로 사용할 수도 있습니다. 함수 반환형에는 함수 내부에서 수행된 모든 연산의 결과를 반환하는 기능이 추가되었습니다.
다음은 위의 접근 방식을 구현한 것입니다.
씨
// C Program to demonstrate using of> // bool as a function return type> #include> #include> // function returning boolean value> bool> is_even(>int> num)> {> >if> (num % 2 == 0) {> >return> true>;> >}> >else> {> >return> false>;> >}> }> // Main function> int> main()> {> >// Integer value declared> >int> num = 5;> >// Function calling> >if> (is_even(num)) {> >printf>(>'%d is even
'>, num);> >}> >else> {> >printf>(>'%d is odd
'>, num);> >}> >return> 0;> }> |
딕스트라
>
>산출
5 is odd>
결론
bool 데이터 유형은 true 또는 false의 두 값 중 하나를 보유할 수 있는 대부분의 프로그래밍 언어에서 기본 데이터 유형입니다. C에서는 헤더 파일 stdbool.h를 포함하거나, 열거형을 사용하거나, 정의된 조건에 따라 값이 0(true) 또는 1(false)인 int 또는 char을 사용하여 bool 변수를 사용할 수 있습니다.
C 부울에 대한 FAQ
1. C의 부울 예제는 무엇입니까?
부울(Boolean)은 참 또는 거짓일 수 있는 두 가지 값을 보유하는 C의 데이터 유형입니다.
2. bool의 C 헤더는 무엇입니까?
stdbool.h는 bool의 C 헤더입니다.
3. C에서 부울의 크기는 얼마입니까?
C의 Boolean은 0과 1의 두 값만 필요하므로 크기는 1바이트입니다.
4. C에서는 부울(bool) 또는 부울(boolean)을 사용합니까?
Boolean은 값을 true 또는 false로 저장할 수 있는 데이터 유형이며 C에서는 이를 bool로 사용합니다.