티스토리 뷰

Programming/C & C++

#ifdef, #endif

유승구 2009. 10. 27. 11:39

출처 : 네이버 지식in
자세한 내용 : http://kin.naver.com/detail/detail.php?d1id=1&dir_id=10104&docid=1792099&qb=aWZkZWY=&enc=utf8&section=kin&rank=1&sort=0&spq=0&pid=fXiNCsoi5TCssuVLU5Zsss--410009&sid=SuZXqxYq5koAAEQHQx0

<일부분 발췌>
C/C++ 에서 # 기호가 첫 문자로 오면 컴파일러 지시자라고 합니다.

#include, #define, #if  ,#ifdef .... 등이 있습니다.

 

#ifdef 는 #define으로 정의된 것이 있는지 판단합니다.

예를 들어 아래와 같은 소스가 있다고 하면...

 

----------------------------------------------

#include "config.h"

void MyDeleteFile(char * szFileName )

{

#ifdef _sun

    _unlink(szFileNAme);

#endif

 

#ifdef _WIN32

   DeleteFile(szFileName);

#endif

}

-----------------------------------------------

위 코드는 #define _sun 이 있으면  _unlink()를 사용하고,

#define _WIN32가 있으면 DeleteFile()을 사용해서 파일을 지우는 함수 입니다.

OS나, 컴파일 목적에 따라서 #define으로 정의 된 값이 있을때

 해당 부분만 컴파일 되도록 소스를 만들수 있게 됩니다.


'Programming > C & C++' 카테고리의 다른 글

C 포인터 [1일차] 포인터 기본 개념 잡아볼까?  (0) 2009.11.30
const / stack / malloc&free / heap  (0) 2009.11.18
CRC 방식  (0) 2009.11.04
#ifdef, #endif  (0) 2009.10.27
#typedef enum  (0) 2009.10.22
#Ifndef  (0) 2009.10.22
TAG
,
댓글
댓글쓰기 폼