IT/C/C++

C언어 개론

루카스강 2014. 12. 25. 22:56

C언어의 역사


  C언어는 1972년 벨 연구소의 데니스 리치에 의해 만들어졌다. (만 알면 된다.)




C언어의 장점


  C언어는 절차지향적 특성을 지녀서 익숙해지는데 오랜 시간이 걸리지 않는다.

     - 정해진 순서에 따라 작동하기 때문에 실행흐름을 파악하기 쉽다.


   이식성이 좋다.

      - CPU의 종류에 상관없이 실행이 가능하고, 대부분의 플랫폼에서 C언어를 사용할 수 있으므로 재컴파일만 하면 타 운영체제에서도 사용이 가능하다.


    어셈블리 수준의 하드웨어 제어가 가능하다.

       - 운영체제 개발을 목적으로 만든 언어이므로 저수준 프로그래밍이 가능하다.


     대중적이다.

        - 그만큼 자료가 많고, 최신 기술을 습득하기에도 유리하다. 사용빈도가 높고 실무에서 바로 쓰일 수 있는 언어이므로 기본 개발 언어라고 할 수 있다.





컴파일


  프로그램을 짠다는 것은 해당 언어의 문법에 맞게 명령어를 입력하는 것이다. 이렇게 언어의 문법에 맞게 명령어를 작성한 것을 소스 파일이라고 한다. 하지만 소스는 고급언어이기 때문에 컴퓨터는 이해를 할 수 없다. 따라서 우리는 컴파일이라는 과정을 통해서 소스파일을 컴퓨터가 이해할 수 있는 이진수로 되어있는 기계어로 번역을 해야 한다. 컴파일을 하기 위해 컴파일러는 소스파일에 작성된 고급언어를 해석해서 기계어 코드로 바꾸고 목적파일을 생성한다. 즉 컴파일은 소스파일을 목적파일로 바꾸는 과정이다.

  하지만 목적파일만 가지고는 컴퓨터에서 실행이 불가능하다. 컴파일된 목적파일은 컴퓨터에 깔려 있는 운영체제가 이해할 수 있는 코드로 변환되는 과정을 거쳐야 한다. 이 과정을 링크라고 한다. 링커는 목적파일을 운영체에의 요건에 맞도록 형태를 조금씩 바꾸고 코드를 뜯어고친다. 소스 파일은 컴파일러에 의해 컴파일이 되어 목적파일이 되며, 목적파일은 링커에 의해 운영체제에 맞게 수정되어서 실행파일이 되는 것이다. 


'IT > C/C++' 카테고리의 다른 글

변수와 형  (0) 2015.01.11