#include와 헤더파일

#include를 사용할때 두가지의 방식이 있음.

  1. <>를 이용하는 경우. 이 경우는 표준 라이브러리 등, 컴파일러가 이미 그 위치를 알고 있는 경우임.
  2. “”를 이용하는 경우. 이 경우 현재 진행중인 프로젝트와 같은 폴더안에 있는 사용자 C파일에서 함수를 가져올때.

이때 현재 진행중인 프로젝트가 있는 폴더의 하위폴더에 사용하고자 하는 파일이 있는 경우, 경로를 보다 자세하게 지정해줄 수 있다.(상대경로)

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include "my_headers/my_macros.h"

이렇게.

재미있는건 include “”만 쳐도 하위폴더를 알아서 찾아준다는 것임.

Untitled

Untitled

이게 파일탐색기에서 본 하위폴더들이다.

절대경로로도 지정할 수 있다.

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include "my_headers/my_macros.h" //path
#include "C:\\Users\\rhkdd\\source\\repos\\Lecture16\\my_headers/my_macros.h"

요렇게…

근데 이렇게 코딩하는 사람은 없다고 함.. ㅋㅋ 홍정모님도 초보시절 오픈소스를 갖다쓸때 몇번 빼고는 없다고 하심.

내가 자주 쓰는 하위 폴더가 예를 들어 my_headers라면 이를 프로젝트 속성에서 아예 정해줄 수 있다. 그러면 위에서 상대경로 입력할때 “my_headers/…”에서 my_headers생략 가능.

Untitled

프로젝트 속성에서 형광펜 친 부분에 경로를 지정해주면 된다.