C 언어 | C 언어 입문 | 개발 환경 및 컴파일러
C 언어로 프로그래밍을 하는데 필요한 툴의 구성 및 개발 환경에 대해 소개한다.
프로그래밍에 필요한 것
어떤 작업에도 꼭 필요한 도구라는 것이 있다. 만화를 그리려면 원고 용지와 잉크, 펜, 자, 연필과 지우개, 스크린 톤이 필요하고, 음악 연주는 악기 외에도 악보와 악보대, 연습용 튜너와 박자 측정기 등도 필요할 것이다. 프로그래밍도 마찬가지로, 단지 컴퓨터가 있으면 만들 수 있는 것은 아니다. 효율적으로 양질의 프로그램을 생산하려면, 고급 개발 환경이 필요하다. 개발 환경은 프로그램을 만들기 위한 프로그램이다. 프로그램의 오류를 찾는 디버거(debugger) 및 프로그램을 작성하기 위한 편집기, 개발 프로세스를 자동화 해주는 CASE Tool 등이 있다.이러한 개발 환경도 프로그램에 의해 만들어지고 있기 때문에, 마음만 먹으면 스스로 만들어 버리는 것도 불가능하지는 않지만, 그런 수 있는 기술이 있다면 이 책을 손에 들고 읽고 있을 일이 없을 것이다. 그래서이 자리에서 간단히 C 언어 개발에 필요한 정보를 소개한다.
C 언어는 원시 프로그램을 목적 프로그램으로 번역하여, 그 후에 실행 가능한 형식으로 정리부터 하고 실행하는 방법으로 진행한다. 이와 같이 원시 프로그램을 목적 프로그램으로 변환하는 작업을 컴파일이라고 한다. 원시 프로그램을 목적 프로그램으로 변환하는 소프트웨어를 컴파일러라고 하며, C 언어로 작성된 소스를 실행하려면 컴파일러가 필요하다. C 언어의 개발 단계는 텍스트 편집기에서 원시 프로그램을 작성하고, 컴파일러를 사용하여 이를 목적 프로그램으로 변환한다. 그리고 마지막으로 링커(linker)라는 소프트웨어를 사용하여 필요한 목적 프로그램을 결합시켜 실행 파일을 생성한다. 대부분의 경우, 링커 등의 실행 가능 파일 형식을 만드는데 필요한 도구는 컴파일러에 포함되어 있다.
그림1 프로그램 작성 흐름
컴파일러를 구하는 방법은 다양하지만, 만약 당신이 Microsoft Windows 사용자이며, 컴퓨터 초보자라면 Microsoft Visual C ++는 통합 개발 환경을 권장한다. 이러한 개발 환경은 그래픽 소프트웨어를 개발할 수 있으며, 필요한 에디터와 컴파일러, 문서 등이 갖추어져 있다. C 언어 프로그램을 작성하여, 버튼을 누르는 것만으로 컴파일, 링킹, 실행을 할 수 있기 때문에 초보자도 다루기 쉽고, 본격적인 개발에 적합하다.
인터넷에서 무료로 제공되는 무료 컴파일러도 존재한다. 예를 들어, Embarcadero 사가 제공하는 Borland C++ Compiler 등을 사용할 수 있다. Borland C++ Compiler는 개인의 개발과 학습을 목적으로 공개된 컴파일러이며, 어떠한 보증이 없더라도 설치가 제한적이지 않다. 그러나 Borland C++ Compiler는 통합 개발 환경이 아니기 때문에, 커맨드 라인을 사용해야 한다.
텍스트 편집기로 작성된 C 언어 프로그램을 어떻게 컴파일하고 실행하거나 컴파일러에 따라 달라진다. 일반적으로 C 언어의 소스 파일 “.C” 확장자를 가진다. 또한, C 언어를 발전시킨 객체 지향 언어인 C ++ 언어 확장 “.CPP"이다.
Microsoft Visual C++와 Borland C++ Compiler 등은 C++ 컴파일러이지만 C++ 언어는 C 언어와 호환성이 있기 때문에 C++ 컴파일러로 C 언어를 컴파일 할 수 있다. C++ 컴파일러에서 C 언어를 컴파일하려면 반드시 확장자를 “.C"로 해야 한다. “.CPP"로 컴파일하면, 컴파일러는 C++ 언어로 컴파일하기 때문에, 경우에 따라서는 오류가 발생한다. 컴파일에 따라서는 확장자에 관계없이, 컴파일러 옵션으로 설정할 수 있는 것도 있을지도 모르겠지만, 자세한 내용은 컴파일러 함께 제공된 설명서를 참조하도록 한다.