[C] C언어의 extern 키워드
·
소프트웨어/C
extern 키워드는 분할 컴파일 시 외부 소스코드에서 정의한 변수를 현재 소스코드에서도 사용할 수 있도록 해주는 키워드이다.프로젝트에서 전역적으로 참조되는 구조체나, 변수, 함수를 여러 소스코드에서 공유할 때 주로 사용한다. 재미있었던 점은, A.c에서 extern으로 외부 변수를 참조할 경우 해당 변수는 A.c에서만 사용할 수 있지만, A.c가 #include하는 헤더파일에서 extern으로 변수를 가져오면, 그 헤더파일을 포함하는 모든 소스파일에서 해당 변수에 접근할 수 있다는 점이었다. 이는 C 언어의 컴파일 과정과 관련이 있다. 전처리 단계에서 #include된 헤더파일의 내용은 해당 소스파일에 그대로 복사되기 때문에, extern 선언이 포함된 헤더파일을 참조한 모든 소스파일에서 동일한 외부..