C에서 bool타입은 어디에 정의되어 있나요?


발생하는 문제 및 실행환경

C에서는 boolean타입을 어떻게 쓰나요? bool이나 true, false 전부 빨간 줄이 뜨던데 C에는 그럼 1/0으로 다 해결해야 되나요?

  • 2016년 01월 29일에 작성됨

조회수 187


1 답변


좋아요
0
싫어요
채택취소하기

C에서는 bool타입이 없어서 스스로 정의해서 써야 합니다. 보편적으로 쓰이는 3가지를 소개해드리겠습니다

방법1

typedef int bool;
#define true 1
#define false 0

방법2

typedef int bool;
enum { false, true };

방법3

typedef enum { false, true } bool;

방법4(C99에서만 쓸 수 있음)

#include <stdbool.h>

이 중에서 아무거나 골라 쓰세요 개인적으로는 4는 C99에서만 쓸 수 있기 때문에 별로고, 2,3이 #define을 안 쓰기 때문에 더 좋은 방법이라고 생각합니다.

  • 2016년 01월 29일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close