mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Sunday, October 22, 2006

C언어] bool, Boolean 논리형 정의하여 사용: 불린/불리언


C++가 아닌, 전통적인 C언어에는 bool (Boolean; 불린, 불리언) 타입이 없습니다. 그래서 사용자가 만들어 주어야 합니다.

typedef 를 사용하여 bool 이라는 자료형을 하나 만들었습니다.

false (거짓) = 0
true  (참)   = 1

에 해당합니다.


C에서, 불린(Boolean) 자료형 정의 예제


소스 파일명: 0.c
#include <stdio.h>

typedef enum {false, true} bool;


int main(void) {

  bool myTest = true;
  if (myTest) puts("논리값이 true 라면 이 줄이 출력됩니다.");


  myTest = false;


  if (myTest) puts("논리값이 false 라면 이 줄이 출력되지 않습니다.");
  if (!myTest) puts("느낌표로 값을 뒤집어주면 이 줄이 출력됩니다.");

  return 0;
}


단, C소스의 확장자가 .cpp 면, C++의 불린형과 충돌하기에 다음과 같은 엉뚱한 에러가 납니다:

0.cpp(3) : error C2143: syntax error : missing '}' before 'constant'
0.cpp(3) : error C2143: syntax error : missing ';' before '}'
0.cpp(3) : error C2059: syntax error : '}'



.cpp 확장자를 가진 소스라면,
typedef enum {false, true} bool;
이 줄을 지워야 정상적으로 작동합니다.




tag: cpp
C언어 | C/C++ (Visual C++)

1 Comments:
At October 7, 2012 at 4:31 AM, Blogger blueasa said...

좋은 정보 감사합니다. :)

 

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top