include <> 와 "" 의 차이

Programming/C++ | 2011. 11. 29. 03:32
Posted by 신이내린프로그래머
인터넷을 돌아다니가 볼랜드포럼의 wfc.h라는 것을 받았다. 
Windows Foundation Classes라고 한다.
이것을 C++빌더에서 사용해보자.

인클루드 패스에 대해서 살펴보자.

인클루드 파일을 지정하는 데는 두가지 방법이 있는데,
첫번째는 인클루드 
디렉토리로서 디폴트로 지정된 디렉토리에 있는 경우고,
두번째는 그외의, 그러니까 

소스가 있는 현재 디렉토리에 있든지 다른 디렉토리에 있을 경우이다. 

#include <stdio.h> 라고 하면, 이 인클루드 파일은 현재 컴파일하고 있는 
컴파일러에 디폴트로 세팅된 디렉토리에서 검색하게 된다. 빌더의 경우에는 
프로젝트 옵션에서 이 디폴트 인클루드 디렉토리를 설정하게 되어있는데, 
빌더 설치 직후에는 다음과 같이 설정되어 있다. 
$(BCB)\include;$(BCB)\include\vcl 
이 말은, 빌더의 루트 밑의 /include 디렉토리와 빌더 루트 밑의 /include/vcl 
디렉토리를 디폴트 인클루드 디렉토리로 설정했다는 뜻이 된다. 

한편, 디폴트 인클루드 디렉토리로 설정되지 않은 파일을 인클루드 할 때는, 
인클루드 프리프로세서에서 < 와 > 대신 "으로 앞뒤를 묶는다. 
#include "myheader.h" 
패스를 별도로 지정하지 않았으므로 현재 프로젝트 소스가 있는 디렉토리를 
대상으로 찾아보게 된다. 만약 다른 디렉토리라면, 
#include "..\myheader.h" 
라든지, 
#include "c:\MyHaeders\myheader.h" 
이런식으로 지정할 수 있다. 

소스 디렉토리에다 넣었다면 
디폴트 인클루드 디렉토리에 소스 디렉토리를 추가하든지, 혹은 인클루드 
프리프로세서 자체에서 소스 디렉토리의 패스를 지정해주면 된다. 
그러니까... 
#include "c:\Program Files\Borland\Cbuilder4\Source\wfc.h" 
라고 하면 됨. 
 

블로그 이미지

신이내린프로그래머

카테고리

Category (22)
Programming (19)
... (1)