C언어는 1972년 UNIX 개발을 목적으로 데니스 리치에 의해 개발되었다.
어셈블리어는 CPU마다 형식이 다르기 때문에, 모든 CPU에서 쓸 수 있는 언어를 개발하는 것이 주 목적이었다.
등장 당시에 쓰이던 포트란, 베이직 등과 비교했을때 상대적으로 매우 쉬우며, 중괄호를 사용해 가독성을 높였다. 그러나 무엇보다도 저급언어와 고급언어의 교집합, 중급언어라는 느낌을 줄 정도로 저수준의 하드웨어 제어에 능하다는 점이 중요하다. 그러나 현대에 이는 진입장벽을 높이기도 한다.(포인터)
위의 표에서 보다시피 현재에도 C는 점유율 1위를 유지중이며, 1
C에 객체지향 개념을 추가한 C++과 Objective-C를 포함하면 30%를 넘기는 점유율을 포함한다.
C언어 이후의 거의 모든 언어는 C의 영향을 받았다고 볼 수 있으며, 그러한 점 때문에 대부분의 언어는 C와의 결합이 쉽다(대표적으로 Python). 현재에도 C/C++은 게임, 대규모 프로젝트의 코어 부분(UI 등은 다른 현대 언어를 사용)등에 사용된다.
또한 C는 거의 모든 플랫폼과 운영체제를 지원하는 장점이 있다. 이는 자바의 멀티플랫폼과는 다른 개념으로, 자바 코드는 가상머신(C/C++로 개발된) 위에서 돌아가는 것이지만, C는 각각의 시스템에 맞는 기계어로 컴파일 되는 것이라는 차이점이 있다.
중구난방이지만 결론적으로, C는 프로그래밍 언어에서 라틴어의 위치와 유사하다고 봐도 좋을 것 같다.
컴파일러로써 Visual C++, gcc, Clang, Turbo C 등이 있다.
- 출처 : http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html [본문으로]
'Programming > C' 카테고리의 다른 글
[C언어] 연산자와 연산자 우선순위 (0) | 2015.01.17 |
---|---|
[C언어] 아스키 코드와 문자열 (0) | 2015.01.17 |
[C언어] 자료형과 변수 선언 (0) | 2015.01.17 |
[C언어] 기본 문법/첫 프로그램 (printf/scanf) (0) | 2015.01.17 |
[C언어] 개발환경(Visual Studio) 구축하기 (0) | 2015.01.17 |